@openmeter/sdk 1.0.0-alpha.4 → 1.0.0-beta-7b2d9ed372e3

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 (261) hide show
  1. package/README.md +45 -70
  2. package/dist/cjs/index.cjs +18 -0
  3. package/dist/cjs/index.d.cts +1 -0
  4. package/dist/cjs/index.js.map +1 -0
  5. package/dist/cjs/src/apps.cjs +176 -0
  6. package/dist/cjs/src/apps.d.cts +338 -0
  7. package/dist/cjs/src/apps.js.map +1 -0
  8. package/dist/cjs/src/billing.cjs +309 -0
  9. package/dist/cjs/src/billing.d.cts +645 -0
  10. package/dist/cjs/src/billing.js.map +1 -0
  11. package/dist/cjs/src/client/apps.cjs +174 -0
  12. package/dist/cjs/src/client/apps.d.cts +339 -0
  13. package/dist/cjs/src/client/apps.js.map +1 -0
  14. package/dist/cjs/src/client/billing.cjs +309 -0
  15. package/dist/cjs/src/client/billing.d.cts +646 -0
  16. package/dist/cjs/src/client/billing.js.map +1 -0
  17. package/dist/cjs/src/client/customers.cjs +185 -0
  18. package/dist/cjs/src/client/customers.d.cts +232 -0
  19. package/dist/cjs/src/client/customers.js.map +1 -0
  20. package/dist/cjs/src/client/entitlements.cjs +244 -0
  21. package/dist/cjs/src/client/entitlements.d.cts +506 -0
  22. package/dist/cjs/src/client/entitlements.js.map +1 -0
  23. package/dist/cjs/src/client/events.cjs +65 -0
  24. package/dist/cjs/src/client/events.d.cts +102 -0
  25. package/dist/cjs/src/client/events.js.map +1 -0
  26. package/dist/cjs/src/client/features.cjs +78 -0
  27. package/dist/cjs/src/client/features.d.cts +154 -0
  28. package/dist/cjs/src/client/features.js.map +1 -0
  29. package/dist/cjs/src/client/index.cjs +100 -0
  30. package/dist/cjs/src/client/index.d.cts +42 -0
  31. package/dist/cjs/src/client/index.js.map +1 -0
  32. package/dist/cjs/src/client/meters.cjs +93 -0
  33. package/dist/cjs/src/client/meters.d.cts +185 -0
  34. package/dist/cjs/src/client/meters.js.map +1 -0
  35. package/dist/cjs/src/client/notifications.cjs +249 -0
  36. package/dist/cjs/src/client/notifications.d.cts +315 -0
  37. package/dist/cjs/src/client/notifications.js.map +1 -0
  38. package/dist/cjs/src/client/plans.cjs +127 -0
  39. package/dist/cjs/src/client/plans.d.cts +193 -0
  40. package/dist/cjs/src/client/plans.js.map +1 -0
  41. package/dist/cjs/src/client/portal.cjs +55 -0
  42. package/dist/cjs/src/client/portal.d.cts +72 -0
  43. package/dist/cjs/src/client/portal.js.map +1 -0
  44. package/dist/cjs/src/client/subjects.cjs +76 -0
  45. package/dist/cjs/src/client/subjects.d.cts +102 -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 +198 -0
  49. package/dist/cjs/src/client/subscriptions.js.map +1 -0
  50. package/dist/cjs/src/client/utils.cjs +93 -0
  51. package/dist/cjs/src/client/utils.d.cts +30 -0
  52. package/dist/cjs/src/client/utils.js.map +1 -0
  53. package/dist/cjs/src/customers.cjs +185 -0
  54. package/dist/cjs/src/customers.d.cts +231 -0
  55. package/dist/cjs/src/customers.js.map +1 -0
  56. package/dist/cjs/src/entitlements.cjs +244 -0
  57. package/dist/cjs/src/entitlements.d.cts +505 -0
  58. package/dist/cjs/src/entitlements.js.map +1 -0
  59. package/dist/cjs/src/events.cjs +65 -0
  60. package/dist/cjs/src/events.d.cts +101 -0
  61. package/dist/cjs/src/events.js.map +1 -0
  62. package/dist/cjs/src/features.cjs +78 -0
  63. package/dist/cjs/src/features.d.cts +153 -0
  64. package/dist/cjs/src/features.js.map +1 -0
  65. package/dist/cjs/src/meters.cjs +93 -0
  66. package/dist/cjs/src/meters.d.cts +184 -0
  67. package/dist/cjs/src/meters.js.map +1 -0
  68. package/dist/cjs/src/notifications.cjs +249 -0
  69. package/dist/cjs/src/notifications.d.cts +314 -0
  70. package/dist/cjs/src/notifications.js.map +1 -0
  71. package/dist/cjs/src/plans.cjs +127 -0
  72. package/dist/cjs/src/plans.d.cts +192 -0
  73. package/dist/cjs/src/plans.js.map +1 -0
  74. package/dist/cjs/src/portal/index.cjs +57 -0
  75. package/dist/cjs/src/portal/index.d.cts +113 -0
  76. package/dist/cjs/src/portal/index.js.map +1 -0
  77. package/dist/cjs/src/react/context.cjs +35 -0
  78. package/dist/cjs/src/react/context.d.cts +9 -0
  79. package/dist/cjs/src/react/context.js.map +1 -0
  80. package/dist/cjs/src/subjects.cjs +76 -0
  81. package/dist/cjs/src/subjects.d.cts +101 -0
  82. package/dist/cjs/src/subjects.js.map +1 -0
  83. package/dist/cjs/src/subscriptions.cjs +116 -0
  84. package/dist/cjs/src/subscriptions.d.cts +197 -0
  85. package/dist/cjs/src/subscriptions.js.map +1 -0
  86. package/dist/cjs/src/utils.cjs +93 -0
  87. package/dist/cjs/src/utils.d.cts +29 -0
  88. package/dist/cjs/src/utils.js.map +1 -0
  89. package/dist/cjs/tsconfig.01ab6c6b.tsbuildinfo +1 -0
  90. package/dist/cjs/tsconfig.1e12acbb.tsbuildinfo +1 -0
  91. package/dist/cjs/tsconfig.38849cd1.tsbuildinfo +1 -0
  92. package/dist/cjs/tsconfig.3bd7bdb7.tsbuildinfo +1 -0
  93. package/dist/cjs/tsconfig.3db00db7.tsbuildinfo +1 -0
  94. package/dist/cjs/tsconfig.5cd8af0a.tsbuildinfo +1 -0
  95. package/dist/cjs/tsconfig.64c40770.tsbuildinfo +1 -0
  96. package/dist/cjs/tsconfig.769a7751.tsbuildinfo +1 -0
  97. package/dist/cjs/tsconfig.8fd1c6cd.tsbuildinfo +1 -0
  98. package/dist/cjs/tsconfig.c9e83bdd.tsbuildinfo +1 -0
  99. package/dist/cjs/tsconfig.d3cb3b9e.tsbuildinfo +1 -0
  100. package/dist/cjs/tsconfig.db7aa141.tsbuildinfo +1 -0
  101. package/dist/cjs/tsconfig.edd7b7ed.tsbuildinfo +1 -0
  102. package/dist/cjs/tsconfig.f343a141.tsbuildinfo +1 -0
  103. package/dist/cjs/tsconfig.f36f8639.tsbuildinfo +1 -0
  104. package/dist/cjs/tsconfig.fc8d5fa4.tsbuildinfo +1 -0
  105. package/dist/index.d.ts +1 -23
  106. package/dist/index.js +2 -29
  107. package/dist/index.js.map +1 -0
  108. package/dist/src/apps.d.ts +338 -0
  109. package/dist/src/apps.js +170 -0
  110. package/dist/src/apps.js.map +1 -0
  111. package/dist/src/billing.d.ts +645 -0
  112. package/dist/src/billing.js +302 -0
  113. package/dist/src/billing.js.map +1 -0
  114. package/dist/src/client/apps.d.ts +339 -0
  115. package/dist/src/client/apps.js +168 -0
  116. package/dist/src/client/apps.js.map +1 -0
  117. package/dist/src/client/billing.d.ts +646 -0
  118. package/dist/src/client/billing.js +302 -0
  119. package/dist/src/client/billing.js.map +1 -0
  120. package/dist/src/client/customers.d.ts +232 -0
  121. package/dist/src/client/customers.js +179 -0
  122. package/dist/src/client/customers.js.map +1 -0
  123. package/dist/src/client/entitlements.d.ts +506 -0
  124. package/dist/src/client/entitlements.js +239 -0
  125. package/dist/src/client/entitlements.js.map +1 -0
  126. package/dist/src/client/events.d.ts +102 -0
  127. package/dist/src/client/events.js +58 -0
  128. package/dist/src/client/events.js.map +1 -0
  129. package/dist/src/client/features.d.ts +154 -0
  130. package/dist/src/client/features.js +74 -0
  131. package/dist/src/client/features.js.map +1 -0
  132. package/dist/src/client/index.d.ts +42 -0
  133. package/dist/src/client/index.js +63 -0
  134. package/dist/src/client/index.js.map +1 -0
  135. package/dist/src/client/meters.d.ts +185 -0
  136. package/dist/src/client/meters.js +89 -0
  137. package/dist/src/client/meters.js.map +1 -0
  138. package/dist/src/client/notifications.d.ts +315 -0
  139. package/dist/src/client/notifications.js +242 -0
  140. package/dist/src/client/notifications.js.map +1 -0
  141. package/dist/src/client/plans.d.ts +193 -0
  142. package/dist/src/client/plans.js +123 -0
  143. package/dist/src/client/plans.js.map +1 -0
  144. package/dist/src/client/portal.d.ts +72 -0
  145. package/dist/src/client/portal.js +51 -0
  146. package/dist/src/client/portal.js.map +1 -0
  147. package/dist/src/client/subjects.d.ts +102 -0
  148. package/dist/src/client/subjects.js +72 -0
  149. package/dist/src/client/subjects.js.map +1 -0
  150. package/dist/src/client/subscriptions.d.ts +198 -0
  151. package/dist/src/client/subscriptions.js +112 -0
  152. package/dist/src/client/subscriptions.js.map +1 -0
  153. package/dist/src/client/utils.d.ts +30 -0
  154. package/dist/src/client/utils.js +85 -0
  155. package/dist/src/client/utils.js.map +1 -0
  156. package/dist/src/customers.d.ts +231 -0
  157. package/dist/src/customers.js +179 -0
  158. package/dist/src/customers.js.map +1 -0
  159. package/dist/src/entitlements.d.ts +505 -0
  160. package/dist/src/entitlements.js +239 -0
  161. package/dist/src/entitlements.js.map +1 -0
  162. package/dist/src/events.d.ts +101 -0
  163. package/dist/src/events.js +58 -0
  164. package/dist/src/events.js.map +1 -0
  165. package/dist/src/features.d.ts +153 -0
  166. package/dist/src/features.js +74 -0
  167. package/dist/src/features.js.map +1 -0
  168. package/dist/src/meters.d.ts +184 -0
  169. package/dist/src/meters.js +89 -0
  170. package/dist/src/meters.js.map +1 -0
  171. package/dist/src/notifications.d.ts +314 -0
  172. package/dist/src/notifications.js +242 -0
  173. package/dist/src/notifications.js.map +1 -0
  174. package/dist/src/plans.d.ts +192 -0
  175. package/dist/src/plans.js +123 -0
  176. package/dist/src/plans.js.map +1 -0
  177. package/dist/src/portal/index.d.ts +113 -0
  178. package/dist/src/portal/index.js +50 -0
  179. package/dist/src/portal/index.js.map +1 -0
  180. package/dist/src/react/context.d.ts +9 -0
  181. package/dist/src/react/context.js +16 -0
  182. package/dist/src/react/context.js.map +1 -0
  183. package/dist/src/subjects.d.ts +101 -0
  184. package/dist/src/subjects.js +72 -0
  185. package/dist/src/subjects.js.map +1 -0
  186. package/dist/src/subscriptions.d.ts +197 -0
  187. package/dist/src/subscriptions.js +112 -0
  188. package/dist/src/subscriptions.js.map +1 -0
  189. package/dist/src/utils.d.ts +29 -0
  190. package/dist/src/utils.js +85 -0
  191. package/dist/src/utils.js.map +1 -0
  192. package/dist/tsconfig.tsbuildinfo +1 -1
  193. package/package.json +95 -56
  194. package/patches/openapi-typescript.patch +73 -0
  195. package/dist/generated/HttpService.d.ts +0 -14
  196. package/dist/generated/HttpService.js +0 -27
  197. package/dist/generated/core/ApiError.d.ts +0 -10
  198. package/dist/generated/core/ApiError.js +0 -17
  199. package/dist/generated/core/ApiRequestOptions.d.ts +0 -13
  200. package/dist/generated/core/ApiRequestOptions.js +0 -2
  201. package/dist/generated/core/ApiResult.d.ts +0 -7
  202. package/dist/generated/core/ApiResult.js +0 -2
  203. package/dist/generated/core/BaseHttpRequest.d.ts +0 -8
  204. package/dist/generated/core/BaseHttpRequest.js +0 -7
  205. package/dist/generated/core/CancelablePromise.d.ts +0 -20
  206. package/dist/generated/core/CancelablePromise.js +0 -93
  207. package/dist/generated/core/NodeHttpRequest.d.ts +0 -14
  208. package/dist/generated/core/NodeHttpRequest.js +0 -17
  209. package/dist/generated/core/OpenAPI.d.ts +0 -16
  210. package/dist/generated/core/OpenAPI.js +0 -12
  211. package/dist/generated/core/request.d.ts +0 -34
  212. package/dist/generated/core/request.js +0 -268
  213. package/dist/generated/index.d.ts +0 -29
  214. package/dist/generated/index.js +0 -22
  215. package/dist/generated/models/Event.d.ts +0 -49
  216. package/dist/generated/models/Event.js +0 -11
  217. package/dist/generated/models/IdOrSlug.d.ts +0 -1
  218. package/dist/generated/models/IdOrSlug.js +0 -2
  219. package/dist/generated/models/Meter.d.ts +0 -30
  220. package/dist/generated/models/Meter.js +0 -2
  221. package/dist/generated/models/MeterAggregation.d.ts +0 -10
  222. package/dist/generated/models/MeterAggregation.js +0 -12
  223. package/dist/generated/models/MeterValue.d.ts +0 -10
  224. package/dist/generated/models/MeterValue.js +0 -2
  225. package/dist/generated/models/Namespace.d.ts +0 -6
  226. package/dist/generated/models/Namespace.js +0 -2
  227. package/dist/generated/models/Problem.d.ts +0 -4
  228. package/dist/generated/models/Problem.js +0 -2
  229. package/dist/generated/models/WindowSize.d.ts +0 -5
  230. package/dist/generated/models/WindowSize.js +0 -7
  231. package/dist/generated/models/meterIdOrSlug.d.ts +0 -5
  232. package/dist/generated/models/meterIdOrSlug.js +0 -2
  233. package/dist/generated/models/namespaceParam.d.ts +0 -4
  234. package/dist/generated/models/namespaceParam.js +0 -2
  235. package/dist/generated/schemas/$Event.d.ts +0 -59
  236. package/dist/generated/schemas/$Event.js +0 -60
  237. package/dist/generated/schemas/$IdOrSlug.d.ts +0 -13
  238. package/dist/generated/schemas/$IdOrSlug.js +0 -14
  239. package/dist/generated/schemas/$Meter.d.ts +0 -44
  240. package/dist/generated/schemas/$Meter.js +0 -45
  241. package/dist/generated/schemas/$MeterAggregation.d.ts +0 -3
  242. package/dist/generated/schemas/$MeterAggregation.js +0 -4
  243. package/dist/generated/schemas/$MeterValue.d.ts +0 -26
  244. package/dist/generated/schemas/$MeterValue.js +0 -27
  245. package/dist/generated/schemas/$Namespace.d.ts +0 -9
  246. package/dist/generated/schemas/$Namespace.js +0 -10
  247. package/dist/generated/schemas/$Problem.d.ts +0 -6
  248. package/dist/generated/schemas/$Problem.js +0 -7
  249. package/dist/generated/schemas/$WindowSize.d.ts +0 -3
  250. package/dist/generated/schemas/$WindowSize.js +0 -4
  251. package/dist/generated/schemas/$meterIdOrSlug.d.ts +0 -4
  252. package/dist/generated/schemas/$meterIdOrSlug.js +0 -5
  253. package/dist/generated/schemas/$namespaceParam.d.ts +0 -5
  254. package/dist/generated/schemas/$namespaceParam.js +0 -6
  255. package/dist/generated/services/DefaultService.d.ts +0 -16
  256. package/dist/generated/services/DefaultService.js +0 -22
  257. package/dist/generated/services/EventsService.d.ts +0 -17
  258. package/dist/generated/services/EventsService.js +0 -29
  259. package/dist/generated/services/MetersService.d.ts +0 -75
  260. package/dist/generated/services/MetersService.js +0 -140
  261. package/index.ts +0 -53
@@ -0,0 +1,242 @@
1
+ import { transformResponse } from './utils.js';
2
+ /**
3
+ * Notifications
4
+ * @description Notifications provide automated triggers when specific entitlement balances and usage thresholds are reached, ensuring that your customers and sales teams are always informed. Notify customers and internal teams when specific conditions are met, like reaching 75%, 100%, and 150% of their monthly usage allowance.
5
+ */
6
+ export class Notifications {
7
+ client;
8
+ channels;
9
+ rules;
10
+ events;
11
+ constructor(client) {
12
+ this.client = client;
13
+ this.channels = new NotificationChannels(this.client);
14
+ this.rules = new NotificationRules(this.client);
15
+ this.events = new NotificationEvents(this.client);
16
+ }
17
+ }
18
+ /**
19
+ * Notification Channels
20
+ * @description Notification channels are the destinations for notifications.
21
+ */
22
+ export class NotificationChannels {
23
+ client;
24
+ constructor(client) {
25
+ this.client = client;
26
+ }
27
+ /**
28
+ * Create a notification channel
29
+ * @param notification - The notification to create
30
+ * @param signal - An optional abort signal
31
+ * @returns The created notification
32
+ */
33
+ async create(notification, signal) {
34
+ const resp = await this.client.POST('/api/v1/notification/channels', {
35
+ signal,
36
+ body: notification,
37
+ });
38
+ return transformResponse(resp);
39
+ }
40
+ /**
41
+ * Get a notification channel by ID
42
+ * @param id - The ID of the notification channel
43
+ * @param signal - An optional abort signal
44
+ * @returns The notification channel
45
+ */
46
+ async get(id, signal) {
47
+ const resp = await this.client.GET('/api/v1/notification/channels/{channelId}', {
48
+ signal,
49
+ params: {
50
+ path: {
51
+ channelId: id,
52
+ },
53
+ },
54
+ });
55
+ return transformResponse(resp);
56
+ }
57
+ /**
58
+ * Update a notification channel
59
+ * @param id - The ID of the notification channel
60
+ * @param notification - The notification to update
61
+ * @param signal - An optional abort signal
62
+ * @returns The updated notification
63
+ */
64
+ async update(id, notification, signal) {
65
+ const resp = await this.client.PUT('/api/v1/notification/channels/{channelId}', {
66
+ signal,
67
+ params: {
68
+ path: {
69
+ channelId: id,
70
+ },
71
+ },
72
+ body: notification,
73
+ });
74
+ return transformResponse(resp);
75
+ }
76
+ /**
77
+ * List notification channels
78
+ * @param query - The query parameters
79
+ * @param signal - An optional abort signal
80
+ * @returns The list of notification channels
81
+ */
82
+ async list(query, signal) {
83
+ const resp = await this.client.GET('/api/v1/notification/channels', {
84
+ signal,
85
+ params: {
86
+ query,
87
+ },
88
+ });
89
+ return transformResponse(resp);
90
+ }
91
+ /**
92
+ * Delete a notification channel
93
+ * @param id - The ID of the notification channel
94
+ * @param signal - An optional abort signal
95
+ * @returns The deleted notification
96
+ */
97
+ async delete(id, signal) {
98
+ const resp = await this.client.DELETE('/api/v1/notification/channels/{channelId}', {
99
+ signal,
100
+ params: {
101
+ path: {
102
+ channelId: id,
103
+ },
104
+ },
105
+ });
106
+ return transformResponse(resp);
107
+ }
108
+ }
109
+ /**
110
+ * Notification Rules
111
+ * @description Notification rules are the conditions that trigger notifications.
112
+ */
113
+ export class NotificationRules {
114
+ client;
115
+ constructor(client) {
116
+ this.client = client;
117
+ }
118
+ /**
119
+ * Create a notification rule
120
+ * @param rule - The rule to create
121
+ * @param signal - An optional abort signal
122
+ * @returns The created rule
123
+ */
124
+ async create(rule, signal) {
125
+ const resp = await this.client.POST('/api/v1/notification/rules', {
126
+ signal,
127
+ body: rule,
128
+ });
129
+ return transformResponse(resp);
130
+ }
131
+ /**
132
+ * Get a notification rule by ID
133
+ * @param id - The ID of the notification rule
134
+ * @param signal - An optional abort signal
135
+ * @returns The notification rule
136
+ */
137
+ async get(id, signal) {
138
+ const resp = await this.client.GET('/api/v1/notification/rules/{ruleId}', {
139
+ signal,
140
+ params: {
141
+ path: {
142
+ ruleId: id,
143
+ },
144
+ },
145
+ });
146
+ return transformResponse(resp);
147
+ }
148
+ /**
149
+ * Update a notification rule
150
+ * @param id - The ID of the notification rule
151
+ * @param rule - The rule to update
152
+ * @param signal - An optional abort signal
153
+ * @returns The updated rule
154
+ */
155
+ async update(id, rule, signal) {
156
+ const resp = await this.client.PUT('/api/v1/notification/rules/{ruleId}', {
157
+ signal,
158
+ params: {
159
+ path: {
160
+ ruleId: id,
161
+ },
162
+ },
163
+ body: rule,
164
+ });
165
+ return transformResponse(resp);
166
+ }
167
+ /**
168
+ * List notification rules
169
+ * @param query - The query parameters
170
+ * @param signal - An optional abort signal
171
+ * @returns The list of notification rules
172
+ */
173
+ async list(query, signal) {
174
+ const resp = await this.client.GET('/api/v1/notification/rules', {
175
+ signal,
176
+ params: {
177
+ query,
178
+ },
179
+ });
180
+ return transformResponse(resp);
181
+ }
182
+ /**
183
+ * Delete a notification rule
184
+ * @param id - The ID of the notification rule
185
+ * @param signal - An optional abort signal
186
+ * @returns The deleted notification
187
+ */
188
+ async delete(id, signal) {
189
+ const resp = await this.client.DELETE('/api/v1/notification/rules/{ruleId}', {
190
+ signal,
191
+ params: {
192
+ path: {
193
+ ruleId: id,
194
+ },
195
+ },
196
+ });
197
+ return transformResponse(resp);
198
+ }
199
+ }
200
+ /**
201
+ * Notification Events
202
+ * @description Notification events are the events that trigger notifications.
203
+ */
204
+ export class NotificationEvents {
205
+ client;
206
+ constructor(client) {
207
+ this.client = client;
208
+ }
209
+ /**
210
+ * Get a notification event by ID
211
+ * @param id - The ID of the notification event
212
+ * @param signal - An optional abort signal
213
+ * @returns The notification event
214
+ */
215
+ async get(id, signal) {
216
+ const resp = await this.client.GET('/api/v1/notification/events/{eventId}', {
217
+ signal,
218
+ params: {
219
+ path: {
220
+ eventId: id,
221
+ },
222
+ },
223
+ });
224
+ return transformResponse(resp);
225
+ }
226
+ /**
227
+ * List notification events
228
+ * @param query - The query parameters
229
+ * @param signal - An optional abort signal
230
+ * @returns The list of notification events
231
+ */
232
+ async list(query, signal) {
233
+ const resp = await this.client.GET('/api/v1/notification/events', {
234
+ signal,
235
+ params: {
236
+ query,
237
+ },
238
+ });
239
+ return transformResponse(resp);
240
+ }
241
+ }
242
+ //# sourceMappingURL=notifications.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notifications.js","sourceRoot":"","sources":["../../src/notifications.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,192 @@
1
+ import type { operations, paths, PlanCreate, PlanReplaceUpdate } from './schemas.js';
2
+ import type { Client } from 'openapi-fetch';
3
+ export declare class Plans {
4
+ private client;
5
+ constructor(client: Client<paths, `${string}/${string}`>);
6
+ /**
7
+ * Create a plan
8
+ * @param plan - The plan to create
9
+ * @param signal - An optional abort signal
10
+ * @returns The created plan
11
+ */
12
+ create(plan: PlanCreate, signal?: AbortSignal): Promise<{
13
+ data?: never;
14
+ error: import("./utils.js").Problem;
15
+ response: Response;
16
+ } | {
17
+ data: {
18
+ readonly id: string;
19
+ name: string;
20
+ description?: string;
21
+ metadata?: import("./schemas.js").components["schemas"]["Metadata"] | null;
22
+ readonly createdAt: Date;
23
+ readonly updatedAt: Date;
24
+ readonly deletedAt?: Date;
25
+ key: string;
26
+ readonly version: number;
27
+ currency: import("./schemas.js").components["schemas"]["CurrencyCode"];
28
+ readonly effectiveFrom?: Date;
29
+ readonly effectiveTo?: Date;
30
+ readonly status: import("./schemas.js").components["schemas"]["PlanStatus"];
31
+ phases: import("./schemas.js").components["schemas"]["PlanPhase"][];
32
+ };
33
+ error?: never;
34
+ response: Response;
35
+ }>;
36
+ /**
37
+ * Get a plan by ID or key
38
+ * @param idOrKey - The ID or key of the plan
39
+ * @param signal - An optional abort signal
40
+ * @returns The plan
41
+ */
42
+ get(id: operations['getPlan']['parameters']['path']['planId'], signal?: AbortSignal): Promise<{
43
+ data?: never;
44
+ error: import("./utils.js").Problem;
45
+ response: Response;
46
+ } | {
47
+ data: {
48
+ readonly id: string;
49
+ name: string;
50
+ description?: string;
51
+ metadata?: import("./schemas.js").components["schemas"]["Metadata"] | null;
52
+ readonly createdAt: Date;
53
+ readonly updatedAt: Date;
54
+ readonly deletedAt?: Date;
55
+ key: string;
56
+ readonly version: number;
57
+ currency: import("./schemas.js").components["schemas"]["CurrencyCode"];
58
+ readonly effectiveFrom?: Date;
59
+ readonly effectiveTo?: Date;
60
+ readonly status: import("./schemas.js").components["schemas"]["PlanStatus"];
61
+ phases: import("./schemas.js").components["schemas"]["PlanPhase"][];
62
+ };
63
+ error?: never;
64
+ response: Response;
65
+ }>;
66
+ /**
67
+ * List plans
68
+ * @param query - The query parameters
69
+ * @param signal - An optional abort signal
70
+ * @returns The list of plans
71
+ */
72
+ list(query?: operations['listPlans']['parameters']['query'], signal?: AbortSignal): Promise<{
73
+ data?: never;
74
+ error: import("./utils.js").Problem;
75
+ response: Response;
76
+ } | {
77
+ data: {
78
+ totalCount: number;
79
+ page: number;
80
+ pageSize: number;
81
+ items: import("./schemas.js").components["schemas"]["Plan"][];
82
+ };
83
+ error?: never;
84
+ response: Response;
85
+ }>;
86
+ /**
87
+ * Update a plan
88
+ * @param id - The ID of the plan
89
+ * @param plan - The plan to update
90
+ * @param signal - An optional abort signal
91
+ * @returns The updated plan
92
+ */
93
+ update(id: operations['updatePlan']['parameters']['path']['planId'], plan: PlanReplaceUpdate, signal?: AbortSignal): Promise<{
94
+ data?: never;
95
+ error: import("./utils.js").Problem;
96
+ response: Response;
97
+ } | {
98
+ data: {
99
+ readonly id: string;
100
+ name: string;
101
+ description?: string;
102
+ metadata?: import("./schemas.js").components["schemas"]["Metadata"] | null;
103
+ readonly createdAt: Date;
104
+ readonly updatedAt: Date;
105
+ readonly deletedAt?: Date;
106
+ key: string;
107
+ readonly version: number;
108
+ currency: import("./schemas.js").components["schemas"]["CurrencyCode"];
109
+ readonly effectiveFrom?: Date;
110
+ readonly effectiveTo?: Date;
111
+ readonly status: import("./schemas.js").components["schemas"]["PlanStatus"];
112
+ phases: import("./schemas.js").components["schemas"]["PlanPhase"][];
113
+ };
114
+ error?: never;
115
+ response: Response;
116
+ }>;
117
+ /**
118
+ * Delete a plan
119
+ * @param id - The ID of the plan
120
+ * @param signal - An optional abort signal
121
+ * @returns The deleted plan
122
+ */
123
+ delete(id: operations['deletePlan']['parameters']['path']['planId'], signal?: AbortSignal): Promise<{
124
+ data?: never;
125
+ error: import("./utils.js").Problem;
126
+ response: Response;
127
+ } | {
128
+ data: undefined;
129
+ error?: never;
130
+ response: Response;
131
+ }>;
132
+ /**
133
+ * Archive a plan
134
+ * @param id - The ID of the plan
135
+ * @param signal - An optional abort signal
136
+ * @returns The archived plan
137
+ */
138
+ archive(id: operations['archivePlan']['parameters']['path']['planId'], signal?: AbortSignal): Promise<{
139
+ data?: never;
140
+ error: import("./utils.js").Problem;
141
+ response: Response;
142
+ } | {
143
+ data: {
144
+ readonly id: string;
145
+ name: string;
146
+ description?: string;
147
+ metadata?: import("./schemas.js").components["schemas"]["Metadata"] | null;
148
+ readonly createdAt: Date;
149
+ readonly updatedAt: Date;
150
+ readonly deletedAt?: Date;
151
+ key: string;
152
+ readonly version: number;
153
+ currency: import("./schemas.js").components["schemas"]["CurrencyCode"];
154
+ readonly effectiveFrom?: Date;
155
+ readonly effectiveTo?: Date;
156
+ readonly status: import("./schemas.js").components["schemas"]["PlanStatus"];
157
+ phases: import("./schemas.js").components["schemas"]["PlanPhase"][];
158
+ };
159
+ error?: never;
160
+ response: Response;
161
+ }>;
162
+ /**
163
+ * Publish a plan
164
+ * @param id - The ID of the plan
165
+ * @param signal - An optional abort signal
166
+ * @returns The published plan
167
+ */
168
+ publish(id: operations['publishPlan']['parameters']['path']['planId'], signal?: AbortSignal): Promise<{
169
+ data?: never;
170
+ error: import("./utils.js").Problem;
171
+ response: Response;
172
+ } | {
173
+ data: {
174
+ readonly id: string;
175
+ name: string;
176
+ description?: string;
177
+ metadata?: import("./schemas.js").components["schemas"]["Metadata"] | null;
178
+ readonly createdAt: Date;
179
+ readonly updatedAt: Date;
180
+ readonly deletedAt?: Date;
181
+ key: string;
182
+ readonly version: number;
183
+ currency: import("./schemas.js").components["schemas"]["CurrencyCode"];
184
+ readonly effectiveFrom?: Date;
185
+ readonly effectiveTo?: Date;
186
+ readonly status: import("./schemas.js").components["schemas"]["PlanStatus"];
187
+ phases: import("./schemas.js").components["schemas"]["PlanPhase"][];
188
+ };
189
+ error?: never;
190
+ response: Response;
191
+ }>;
192
+ }
@@ -0,0 +1,123 @@
1
+ import { transformResponse } from './utils.js';
2
+ export class Plans {
3
+ client;
4
+ constructor(client) {
5
+ this.client = client;
6
+ }
7
+ /**
8
+ * Create a plan
9
+ * @param plan - The plan to create
10
+ * @param signal - An optional abort signal
11
+ * @returns The created plan
12
+ */
13
+ async create(plan, signal) {
14
+ const resp = await this.client.POST('/api/v1/plans', {
15
+ signal,
16
+ body: plan,
17
+ });
18
+ return transformResponse(resp);
19
+ }
20
+ /**
21
+ * Get a plan by ID or key
22
+ * @param idOrKey - The ID or key of the plan
23
+ * @param signal - An optional abort signal
24
+ * @returns The plan
25
+ */
26
+ async get(id, signal) {
27
+ const resp = await this.client.GET('/api/v1/plans/{planId}', {
28
+ signal,
29
+ params: {
30
+ path: {
31
+ planId: id,
32
+ },
33
+ },
34
+ });
35
+ return transformResponse(resp);
36
+ }
37
+ /**
38
+ * List plans
39
+ * @param query - The query parameters
40
+ * @param signal - An optional abort signal
41
+ * @returns The list of plans
42
+ */
43
+ async list(query, signal) {
44
+ const resp = await this.client.GET('/api/v1/plans', {
45
+ signal,
46
+ params: {
47
+ query,
48
+ },
49
+ });
50
+ return transformResponse(resp);
51
+ }
52
+ /**
53
+ * Update a plan
54
+ * @param id - The ID of the plan
55
+ * @param plan - The plan to update
56
+ * @param signal - An optional abort signal
57
+ * @returns The updated plan
58
+ */
59
+ async update(id, plan, signal) {
60
+ const resp = await this.client.PUT('/api/v1/plans/{planId}', {
61
+ signal,
62
+ body: plan,
63
+ params: {
64
+ path: {
65
+ planId: id,
66
+ },
67
+ },
68
+ });
69
+ return transformResponse(resp);
70
+ }
71
+ /**
72
+ * Delete a plan
73
+ * @param id - The ID of the plan
74
+ * @param signal - An optional abort signal
75
+ * @returns The deleted plan
76
+ */
77
+ async delete(id, signal) {
78
+ const resp = await this.client.DELETE('/api/v1/plans/{planId}', {
79
+ signal,
80
+ params: {
81
+ path: {
82
+ planId: id,
83
+ },
84
+ },
85
+ });
86
+ return transformResponse(resp);
87
+ }
88
+ /**
89
+ * Archive a plan
90
+ * @param id - The ID of the plan
91
+ * @param signal - An optional abort signal
92
+ * @returns The archived plan
93
+ */
94
+ async archive(id, signal) {
95
+ const resp = await this.client.POST('/api/v1/plans/{planId}/archive', {
96
+ signal,
97
+ params: {
98
+ path: {
99
+ planId: id,
100
+ },
101
+ },
102
+ });
103
+ return transformResponse(resp);
104
+ }
105
+ /**
106
+ * Publish a plan
107
+ * @param id - The ID of the plan
108
+ * @param signal - An optional abort signal
109
+ * @returns The published plan
110
+ */
111
+ async publish(id, signal) {
112
+ const resp = await this.client.POST('/api/v1/plans/{planId}/publish', {
113
+ signal,
114
+ params: {
115
+ path: {
116
+ planId: id,
117
+ },
118
+ },
119
+ });
120
+ return transformResponse(resp);
121
+ }
122
+ }
123
+ //# sourceMappingURL=plans.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plans.js","sourceRoot":"","sources":["../../src/plans.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAS9C,MAAM,OAAO,KAAK;IACI;IAApB,YAAoB,MAA4C;QAA5C,WAAM,GAAN,MAAM,CAAsC;IAAG,CAAC;IAEpE;;;;;OAKG;IACI,KAAK,CAAC,MAAM,CAAC,IAAgB,EAAE,MAAoB;QACxD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE;YACnD,MAAM;YACN,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,GAAG,CACd,EAAyD,EACzD,MAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wBAAwB,EAAE;YAC3D,MAAM;YACN,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,MAAM,EAAE,EAAE;iBACX;aACF;SACF,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,IAAI,CACf,KAAsD,EACtD,MAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE;YAClD,MAAM;YACN,MAAM,EAAE;gBACN,KAAK;aACN;SACF,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,MAAM,CACjB,EAA4D,EAC5D,IAAuB,EACvB,MAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wBAAwB,EAAE;YAC3D,MAAM;YACN,IAAI,EAAE,IAAI;YACV,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,MAAM,EAAE,EAAE;iBACX;aACF;SACF,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,MAAM,CACjB,EAA4D,EAC5D,MAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,wBAAwB,EAAE;YAC9D,MAAM;YACN,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,MAAM,EAAE,EAAE;iBACX;aACF;SACF,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,OAAO,CAClB,EAA6D,EAC7D,MAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE;YACpE,MAAM;YACN,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,MAAM,EAAE,EAAE;iBACX;aACF;SACF,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,OAAO,CAClB,EAA6D,EAC7D,MAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE;YACpE,MAAM;YACN,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,MAAM,EAAE,EAAE;iBACX;aACF;SACF,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;CACF"}
@@ -0,0 +1,113 @@
1
+ import type { RequestOptions } from '../client/utils.js';
2
+ import type { ClientOptions } from 'openapi-fetch';
3
+ export type { RequestOptions } from '../client/utils.js';
4
+ /**
5
+ * Portal Config
6
+ */
7
+ export type Config = Pick<ClientOptions, 'baseUrl' | 'headers' | 'fetch' | 'Request' | 'requestInitExt'> & {
8
+ portalToken: string;
9
+ };
10
+ /**
11
+ * OpenMeter Portal Client
12
+ * Access to the customer portal.
13
+ */
14
+ export declare class OpenMeter {
15
+ private client;
16
+ constructor(config: Config);
17
+ /**
18
+ * Query usage data for a meter by slug for customer portal.
19
+ * This endpoint is publicly exposable to consumers.
20
+ * @param meterSlug - The slug of the meter
21
+ * @param query - The query parameters
22
+ * @param signal - An optional abort signal
23
+ * @returns The meter data
24
+ */
25
+ query(meterSlug: string, query?: {
26
+ /** @description Start date-time in RFC 3339 format. Inclusive. */
27
+ from?: string | Date;
28
+ /** @description End date-time in RFC 3339 format. Inclusive. */
29
+ to?: string | Date;
30
+ /** @description If not specified, a single usage aggregate will be returned for the entirety of the specified period for each subject and group. */
31
+ windowSize?: 'MINUTE' | 'HOUR' | 'DAY';
32
+ /** @description The value is the name of the time zone as defined in the IANA Time Zone Database (http://www.iana.org/time-zones). If not specified, the UTC timezone will be used. */
33
+ windowTimeZone?: string;
34
+ /** @description Simple filter for group bys with exact match. */
35
+ filterGroupBy?: Record<string, string>;
36
+ /** @description If not specified a single aggregate will be returned for each subject and time window. `subject` is a reserved group by value. */
37
+ groupBy?: string[];
38
+ }, options?: RequestOptions): Promise<{
39
+ data?: never;
40
+ error: import("../client/utils.js").Problem;
41
+ response: Response;
42
+ } | {
43
+ data: import("openapi-typescript-helpers").SuccessResponse<{
44
+ 200: {
45
+ headers: {
46
+ [name: string]: unknown;
47
+ };
48
+ content: {
49
+ "application/json": import("../client/schemas.js").components["schemas"]["MeterQueryResult"];
50
+ "text/csv": string;
51
+ };
52
+ };
53
+ 400: {
54
+ headers: {
55
+ [name: string]: unknown;
56
+ };
57
+ content: {
58
+ "application/problem+json": import("../client/schemas.js").components["schemas"]["BadRequestProblemResponse"];
59
+ };
60
+ };
61
+ 401: {
62
+ headers: {
63
+ [name: string]: unknown;
64
+ };
65
+ content: {
66
+ "application/problem+json": import("../client/schemas.js").components["schemas"]["UnauthorizedProblemResponse"];
67
+ };
68
+ };
69
+ 403: {
70
+ headers: {
71
+ [name: string]: unknown;
72
+ };
73
+ content: {
74
+ "application/problem+json": import("../client/schemas.js").components["schemas"]["ForbiddenProblemResponse"];
75
+ };
76
+ };
77
+ 404: {
78
+ headers: {
79
+ [name: string]: unknown;
80
+ };
81
+ content: {
82
+ "application/problem+json": import("../client/schemas.js").components["schemas"]["NotFoundProblemResponse"];
83
+ };
84
+ };
85
+ 500: {
86
+ headers: {
87
+ [name: string]: unknown;
88
+ };
89
+ content: {
90
+ "application/problem+json": import("../client/schemas.js").components["schemas"]["InternalServerErrorProblemResponse"];
91
+ };
92
+ };
93
+ 503: {
94
+ headers: {
95
+ [name: string]: unknown;
96
+ };
97
+ content: {
98
+ "application/problem+json": import("../client/schemas.js").components["schemas"]["ServiceUnavailableProblemResponse"];
99
+ };
100
+ };
101
+ default: {
102
+ headers: {
103
+ [name: string]: unknown;
104
+ };
105
+ content: {
106
+ "application/problem+json": import("../client/schemas.js").components["schemas"]["UnexpectedProblemResponse"];
107
+ };
108
+ };
109
+ }, `${string}/${string}`>;
110
+ error?: never;
111
+ response: Response;
112
+ }>;
113
+ }