@openmeter/sdk 1.0.0-alpha.3 → 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 -62
  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 -28
  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 -57
  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,338 @@
1
+ import type { AppBaseReplaceUpdate, CreateStripeCheckoutSessionRequest, operations, paths } from './schemas.js';
2
+ import type { Client } from 'openapi-fetch';
3
+ /**
4
+ * Apps
5
+ * Manage integrations for extending OpenMeter's functionality.
6
+ */
7
+ export declare class Apps {
8
+ private client;
9
+ marketplace: AppMarketplace;
10
+ stripe: AppStripe;
11
+ constructor(client: Client<paths, `${string}/${string}`>);
12
+ /**
13
+ * List apps
14
+ * @param query - The query parameters
15
+ * @param signal - An optional abort signal
16
+ * @returns The apps
17
+ */
18
+ list(query?: operations['listApps']['parameters']['query'], signal?: AbortSignal): Promise<{
19
+ data?: never;
20
+ error: import("./utils.js").Problem;
21
+ response: Response;
22
+ } | {
23
+ data: {
24
+ page: number;
25
+ pageSize: number;
26
+ totalCount: number;
27
+ items: import("./schemas.js").components["schemas"]["App"][];
28
+ };
29
+ error?: never;
30
+ response: Response;
31
+ }>;
32
+ /**
33
+ * Get an app
34
+ * @param id - The ID of the app
35
+ * @param signal - An optional abort signal
36
+ * @returns The app
37
+ */
38
+ get(id: operations['getApp']['parameters']['path']['id'], signal?: AbortSignal): Promise<{
39
+ data?: never;
40
+ error: import("./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("./schemas.js").components["schemas"]["App"];
50
+ };
51
+ };
52
+ 400: {
53
+ headers: {
54
+ [name: string]: unknown;
55
+ };
56
+ content: {
57
+ "application/problem+json": import("./schemas.js").components["schemas"]["BadRequestProblemResponse"];
58
+ };
59
+ };
60
+ 401: {
61
+ headers: {
62
+ [name: string]: unknown;
63
+ };
64
+ content: {
65
+ "application/problem+json": import("./schemas.js").components["schemas"]["UnauthorizedProblemResponse"];
66
+ };
67
+ };
68
+ 403: {
69
+ headers: {
70
+ [name: string]: unknown;
71
+ };
72
+ content: {
73
+ "application/problem+json": import("./schemas.js").components["schemas"]["ForbiddenProblemResponse"];
74
+ };
75
+ };
76
+ 404: {
77
+ headers: {
78
+ [name: string]: unknown;
79
+ };
80
+ content: {
81
+ "application/problem+json": import("./schemas.js").components["schemas"]["NotFoundProblemResponse"];
82
+ };
83
+ };
84
+ 500: {
85
+ headers: {
86
+ [name: string]: unknown;
87
+ };
88
+ content: {
89
+ "application/problem+json": import("./schemas.js").components["schemas"]["InternalServerErrorProblemResponse"];
90
+ };
91
+ };
92
+ 503: {
93
+ headers: {
94
+ [name: string]: unknown;
95
+ };
96
+ content: {
97
+ "application/problem+json": import("./schemas.js").components["schemas"]["ServiceUnavailableProblemResponse"];
98
+ };
99
+ };
100
+ default: {
101
+ headers: {
102
+ [name: string]: unknown;
103
+ };
104
+ content: {
105
+ "application/problem+json": import("./schemas.js").components["schemas"]["UnexpectedProblemResponse"];
106
+ };
107
+ };
108
+ }, `${string}/${string}`>;
109
+ error?: never;
110
+ response: Response;
111
+ }>;
112
+ /**
113
+ * Update an app
114
+ * @param id - The ID of the app
115
+ * @param body - The body of the request
116
+ * @param signal - An optional abort signal
117
+ * @returns The app
118
+ */
119
+ update(id: operations['updateApp']['parameters']['path']['id'], body: AppBaseReplaceUpdate, signal?: AbortSignal): Promise<{
120
+ data?: never;
121
+ error: import("./utils.js").Problem;
122
+ response: Response;
123
+ } | {
124
+ data: import("openapi-typescript-helpers").SuccessResponse<{
125
+ 200: {
126
+ headers: {
127
+ [name: string]: unknown;
128
+ };
129
+ content: {
130
+ "application/json": import("./schemas.js").components["schemas"]["App"];
131
+ };
132
+ };
133
+ 400: {
134
+ headers: {
135
+ [name: string]: unknown;
136
+ };
137
+ content: {
138
+ "application/problem+json": import("./schemas.js").components["schemas"]["BadRequestProblemResponse"];
139
+ };
140
+ };
141
+ 401: {
142
+ headers: {
143
+ [name: string]: unknown;
144
+ };
145
+ content: {
146
+ "application/problem+json": import("./schemas.js").components["schemas"]["UnauthorizedProblemResponse"];
147
+ };
148
+ };
149
+ 403: {
150
+ headers: {
151
+ [name: string]: unknown;
152
+ };
153
+ content: {
154
+ "application/problem+json": import("./schemas.js").components["schemas"]["ForbiddenProblemResponse"];
155
+ };
156
+ };
157
+ 404: {
158
+ headers: {
159
+ [name: string]: unknown;
160
+ };
161
+ content: {
162
+ "application/problem+json": import("./schemas.js").components["schemas"]["NotFoundProblemResponse"];
163
+ };
164
+ };
165
+ 500: {
166
+ headers: {
167
+ [name: string]: unknown;
168
+ };
169
+ content: {
170
+ "application/problem+json": import("./schemas.js").components["schemas"]["InternalServerErrorProblemResponse"];
171
+ };
172
+ };
173
+ 503: {
174
+ headers: {
175
+ [name: string]: unknown;
176
+ };
177
+ content: {
178
+ "application/problem+json": import("./schemas.js").components["schemas"]["ServiceUnavailableProblemResponse"];
179
+ };
180
+ };
181
+ default: {
182
+ headers: {
183
+ [name: string]: unknown;
184
+ };
185
+ content: {
186
+ "application/problem+json": import("./schemas.js").components["schemas"]["UnexpectedProblemResponse"];
187
+ };
188
+ };
189
+ }, `${string}/${string}`>;
190
+ error?: never;
191
+ response: Response;
192
+ }>;
193
+ /**
194
+ * Uninstall an app
195
+ * @param id - The ID of the app
196
+ * @param signal - An optional abort signal
197
+ * @returns The app
198
+ */
199
+ uninstall(id: operations['uninstallApp']['parameters']['path']['id'], signal?: AbortSignal): Promise<{
200
+ data?: never;
201
+ error: import("./utils.js").Problem;
202
+ response: Response;
203
+ } | {
204
+ data: undefined;
205
+ error?: never;
206
+ response: Response;
207
+ }>;
208
+ }
209
+ /**
210
+ * App Marketplace
211
+ * Available apps from the OpenMeter Marketplace.
212
+ */
213
+ export declare class AppMarketplace {
214
+ private client;
215
+ constructor(client: Client<paths, `${string}/${string}`>);
216
+ /**
217
+ * List available apps
218
+ * @param query - The query parameters
219
+ * @param signal - An optional abort signal
220
+ * @returns The apps
221
+ */
222
+ list(query?: operations['listMarketplaceListings']['parameters']['query'], signal?: AbortSignal): Promise<{
223
+ data?: never;
224
+ error: import("./utils.js").Problem;
225
+ response: Response;
226
+ } | {
227
+ data: {
228
+ page: number;
229
+ pageSize: number;
230
+ totalCount: number;
231
+ items: import("./schemas.js").components["schemas"]["MarketplaceListing"][];
232
+ };
233
+ error?: never;
234
+ response: Response;
235
+ }>;
236
+ /**
237
+ * Get details for a listing
238
+ * @param type - The type of the listing
239
+ * @param signal - An optional abort signal
240
+ * @returns The listing
241
+ */
242
+ get(type: operations['getMarketplaceListing']['parameters']['path']['type'], signal?: AbortSignal): Promise<{
243
+ data?: never;
244
+ error: import("./utils.js").Problem;
245
+ response: Response;
246
+ } | {
247
+ data: {
248
+ type: import("./schemas.js").components["schemas"]["AppType"];
249
+ name: string;
250
+ description: string;
251
+ capabilities: import("./schemas.js").components["schemas"]["AppCapability"][];
252
+ };
253
+ error?: never;
254
+ response: Response;
255
+ }>;
256
+ /**
257
+ * Install an app via OAuth. Returns a URL to start the OAuth 2.0 flow.
258
+ * @param type - The type of the listing
259
+ * @param signal - An optional abort signal
260
+ * @returns The OAuth2 install URL
261
+ */
262
+ getOauth2InstallUrl(type: operations['marketplaceOAuth2InstallGetURL']['parameters']['path']['type'], signal?: AbortSignal): Promise<{
263
+ data?: never;
264
+ error: import("./utils.js").Problem;
265
+ response: Response;
266
+ } | {
267
+ data: {
268
+ url: string;
269
+ };
270
+ error?: never;
271
+ response: Response;
272
+ }>;
273
+ /**
274
+ * Authorize OAuth2 code. Verifies the OAuth code and exchanges it for a token and refresh token
275
+ * @param type - The type of the listing
276
+ * @param signal - An optional abort signal
277
+ * @returns The authorization URL
278
+ */
279
+ authorizeOauth2(type: operations['marketplaceOAuth2InstallAuthorize']['parameters']['path']['type'], signal?: AbortSignal): Promise<{
280
+ data?: never;
281
+ error: import("./utils.js").Problem;
282
+ response: Response;
283
+ } | {
284
+ data: never;
285
+ error?: never;
286
+ response: Response;
287
+ }>;
288
+ /**
289
+ * Install an app via API key.
290
+ * @param type - The type of the listing
291
+ * @param signal - An optional abort signal
292
+ * @returns The installation
293
+ */
294
+ installWithAPIKey(type: operations['marketplaceAppAPIKeyInstall']['parameters']['path']['type'], body: operations['marketplaceAppAPIKeyInstall']['requestBody']['content']['application/json'], signal?: AbortSignal): Promise<{
295
+ data?: never;
296
+ error: import("./utils.js").Problem;
297
+ response: Response;
298
+ } | {
299
+ data: {
300
+ app: import("./schemas.js").components["schemas"]["App"];
301
+ defaultForCapabilityTypes: import("./schemas.js").components["schemas"]["AppCapabilityType"][];
302
+ };
303
+ error?: never;
304
+ response: Response;
305
+ }>;
306
+ }
307
+ /**
308
+ * Stripe App
309
+ */
310
+ export declare class AppStripe {
311
+ private client;
312
+ constructor(client: Client<paths, `${string}/${string}`>);
313
+ /**
314
+ * Create a checkout session
315
+ * @param body - The body of the request
316
+ * @param signal - An optional abort signal
317
+ * @returns The checkout session
318
+ */
319
+ createCheckoutSession(body: CreateStripeCheckoutSessionRequest, signal?: AbortSignal): Promise<{
320
+ data?: never;
321
+ error: import("./utils.js").Problem;
322
+ response: Response;
323
+ } | {
324
+ data: {
325
+ customerId: string;
326
+ stripeCustomerId: string;
327
+ sessionId: string;
328
+ setupIntentId: string;
329
+ url: string;
330
+ mode: import("./schemas.js").components["schemas"]["StripeCheckoutSessionMode"];
331
+ cancelURL?: string;
332
+ successURL?: string;
333
+ returnURL?: string;
334
+ };
335
+ error?: never;
336
+ response: Response;
337
+ }>;
338
+ }
@@ -0,0 +1,170 @@
1
+ import { transformResponse } from './utils.js';
2
+ /**
3
+ * Apps
4
+ * Manage integrations for extending OpenMeter's functionality.
5
+ */
6
+ export class Apps {
7
+ client;
8
+ marketplace;
9
+ stripe;
10
+ constructor(client) {
11
+ this.client = client;
12
+ this.marketplace = new AppMarketplace(client);
13
+ this.stripe = new AppStripe(client);
14
+ }
15
+ /**
16
+ * List apps
17
+ * @param query - The query parameters
18
+ * @param signal - An optional abort signal
19
+ * @returns The apps
20
+ */
21
+ async list(query, signal) {
22
+ const resp = await this.client.GET('/api/v1/apps', {
23
+ signal,
24
+ params: { query },
25
+ });
26
+ return transformResponse(resp);
27
+ }
28
+ /**
29
+ * Get an app
30
+ * @param id - The ID of the app
31
+ * @param signal - An optional abort signal
32
+ * @returns The app
33
+ */
34
+ async get(id, signal) {
35
+ const resp = await this.client.GET('/api/v1/apps/{id}', {
36
+ signal,
37
+ params: {
38
+ path: { id },
39
+ },
40
+ });
41
+ return transformResponse(resp);
42
+ }
43
+ /**
44
+ * Update an app
45
+ * @param id - The ID of the app
46
+ * @param body - The body of the request
47
+ * @param signal - An optional abort signal
48
+ * @returns The app
49
+ */
50
+ async update(id, body, signal) {
51
+ const resp = await this.client.PUT('/api/v1/apps/{id}', {
52
+ body,
53
+ signal,
54
+ params: { path: { id } },
55
+ });
56
+ return transformResponse(resp);
57
+ }
58
+ /**
59
+ * Uninstall an app
60
+ * @param id - The ID of the app
61
+ * @param signal - An optional abort signal
62
+ * @returns The app
63
+ */
64
+ async uninstall(id, signal) {
65
+ const resp = await this.client.DELETE('/api/v1/apps/{id}', {
66
+ signal,
67
+ params: { path: { id } },
68
+ });
69
+ return transformResponse(resp);
70
+ }
71
+ }
72
+ /**
73
+ * App Marketplace
74
+ * Available apps from the OpenMeter Marketplace.
75
+ */
76
+ export class AppMarketplace {
77
+ client;
78
+ constructor(client) {
79
+ this.client = client;
80
+ }
81
+ /**
82
+ * List available apps
83
+ * @param query - The query parameters
84
+ * @param signal - An optional abort signal
85
+ * @returns The apps
86
+ */
87
+ async list(query, signal) {
88
+ const resp = await this.client.GET('/api/v1/marketplace/listings', {
89
+ signal,
90
+ params: { query },
91
+ });
92
+ return transformResponse(resp);
93
+ }
94
+ /**
95
+ * Get details for a listing
96
+ * @param type - The type of the listing
97
+ * @param signal - An optional abort signal
98
+ * @returns The listing
99
+ */
100
+ async get(type, signal) {
101
+ const resp = await this.client.GET('/api/v1/marketplace/listings/{type}', {
102
+ signal,
103
+ params: { path: { type } },
104
+ });
105
+ return transformResponse(resp);
106
+ }
107
+ /**
108
+ * Install an app via OAuth. Returns a URL to start the OAuth 2.0 flow.
109
+ * @param type - The type of the listing
110
+ * @param signal - An optional abort signal
111
+ * @returns The OAuth2 install URL
112
+ */
113
+ async getOauth2InstallUrl(type, signal) {
114
+ const resp = await this.client.GET('/api/v1/marketplace/listings/{type}/install/oauth2', {
115
+ signal,
116
+ params: { path: { type } },
117
+ });
118
+ return transformResponse(resp);
119
+ }
120
+ /**
121
+ * Authorize OAuth2 code. Verifies the OAuth code and exchanges it for a token and refresh token
122
+ * @param type - The type of the listing
123
+ * @param signal - An optional abort signal
124
+ * @returns The authorization URL
125
+ */
126
+ async authorizeOauth2(type, signal) {
127
+ const resp = await this.client.GET('/api/v1/marketplace/listings/{type}/install/oauth2/authorize', {
128
+ signal,
129
+ params: { path: { type } },
130
+ });
131
+ return transformResponse(resp);
132
+ }
133
+ /**
134
+ * Install an app via API key.
135
+ * @param type - The type of the listing
136
+ * @param signal - An optional abort signal
137
+ * @returns The installation
138
+ */
139
+ async installWithAPIKey(type, body, signal) {
140
+ const resp = await this.client.POST('/api/v1/marketplace/listings/{type}/install/apikey', {
141
+ body,
142
+ signal,
143
+ params: { path: { type } },
144
+ });
145
+ return transformResponse(resp);
146
+ }
147
+ }
148
+ /**
149
+ * Stripe App
150
+ */
151
+ export class AppStripe {
152
+ client;
153
+ constructor(client) {
154
+ this.client = client;
155
+ }
156
+ /**
157
+ * Create a checkout session
158
+ * @param body - The body of the request
159
+ * @param signal - An optional abort signal
160
+ * @returns The checkout session
161
+ */
162
+ async createCheckoutSession(body, signal) {
163
+ const resp = await this.client.POST('/api/v1/stripe/checkout/sessions', {
164
+ body,
165
+ signal,
166
+ });
167
+ return transformResponse(resp);
168
+ }
169
+ }
170
+ //# sourceMappingURL=apps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apps.js","sourceRoot":"","sources":["../../src/apps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAS9C;;;GAGG;AACH,MAAM,OAAO,IAAI;IAIK;IAHb,WAAW,CAAgB;IAC3B,MAAM,CAAW;IAExB,YAAoB,MAA4C;QAA5C,WAAM,GAAN,MAAM,CAAsC;QAC9D,IAAI,CAAC,WAAW,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAA;QAC7C,IAAI,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,CAAA;IACrC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,IAAI,CACf,KAAqD,EACrD,MAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE;YACjD,MAAM;YACN,MAAM,EAAE,EAAE,KAAK,EAAE;SAClB,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,GAAG,CACd,EAAoD,EACpD,MAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE;YACtD,MAAM;YACN,MAAM,EAAE;gBACN,IAAI,EAAE,EAAE,EAAE,EAAE;aACb;SACF,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,MAAM,CACjB,EAAuD,EACvD,IAA0B,EAC1B,MAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE;YACtD,IAAI;YACJ,MAAM;YACN,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE;SACzB,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,SAAS,CACpB,EAA0D,EAC1D,MAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE;YACzD,MAAM;YACN,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE;SACzB,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,cAAc;IACL;IAApB,YAAoB,MAA4C;QAA5C,WAAM,GAAN,MAAM,CAAsC;IAAG,CAAC;IAEpE;;;;;OAKG;IACI,KAAK,CAAC,IAAI,CACf,KAAoE,EACpE,MAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,8BAA8B,EAAE;YACjE,MAAM;YACN,MAAM,EAAE,EAAE,KAAK,EAAE;SAClB,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,GAAG,CACd,IAAuE,EACvE,MAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,qCAAqC,EAAE;YACxE,MAAM;YACN,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE;SAC3B,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,mBAAmB,CAC9B,IAAgF,EAChF,MAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAChC,oDAAoD,EACpD;YACE,MAAM;YACN,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE;SAC3B,CACF,CAAA;QAED,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,eAAe,CAC1B,IAAmF,EACnF,MAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAChC,8DAA8D,EAC9D;YACE,MAAM;YACN,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE;SAC3B,CACF,CAAA;QAED,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,iBAAiB,CAC5B,IAA6E,EAC7E,IAA6F,EAC7F,MAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CACjC,oDAAoD,EACpD;YACE,IAAI;YACJ,MAAM;YACN,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE;SAC3B,CACF,CAAA;QAED,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,SAAS;IACA;IAApB,YAAoB,MAA4C;QAA5C,WAAM,GAAN,MAAM,CAAsC;IAAG,CAAC;IAEpE;;;;;OAKG;IACI,KAAK,CAAC,qBAAqB,CAChC,IAAwC,EACxC,MAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE;YACtE,IAAI;YACJ,MAAM;SACP,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;CACF"}