@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,231 @@
1
+ import type { CustomerAppData, CustomerCreate, CustomerReplaceUpdate, operations, paths } from './schemas.js';
2
+ import type { Client } from 'openapi-fetch';
3
+ /**
4
+ * Customers
5
+ * Manage customer subscription lifecycles and plan assignments.
6
+ */
7
+ export declare class Customers {
8
+ private client;
9
+ apps: CustomerApps;
10
+ entitlements: CustomerEntitlements;
11
+ constructor(client: Client<paths, `${string}/${string}`>);
12
+ /**
13
+ * Create a customer
14
+ * @param customer - The customer to create
15
+ * @param signal - An optional abort signal
16
+ * @returns The created customer
17
+ */
18
+ create(customer: CustomerCreate, signal?: AbortSignal): Promise<{
19
+ data?: never;
20
+ error: import("./utils.js").Problem;
21
+ response: Response;
22
+ } | {
23
+ data: {
24
+ readonly id: string;
25
+ name: string;
26
+ description?: string;
27
+ metadata?: import("./schemas.js").components["schemas"]["Metadata"] | null;
28
+ readonly createdAt: Date;
29
+ readonly updatedAt: Date;
30
+ readonly deletedAt?: Date;
31
+ usageAttribution: import("./schemas.js").components["schemas"]["CustomerUsageAttribution"];
32
+ primaryEmail?: string;
33
+ currency?: import("./schemas.js").components["schemas"]["CurrencyCode"];
34
+ billingAddress?: import("./schemas.js").components["schemas"]["Address"];
35
+ readonly currentSubscriptionId?: string;
36
+ };
37
+ error?: never;
38
+ response: Response;
39
+ }>;
40
+ /**
41
+ * Get a customer by ID
42
+ * @param id - The ID of the customer
43
+ * @param signal - An optional abort signal
44
+ * @returns The customer
45
+ */
46
+ get(id: operations['getCustomer']['parameters']['path']['id'], signal?: AbortSignal): Promise<{
47
+ data?: never;
48
+ error: import("./utils.js").Problem;
49
+ response: Response;
50
+ } | {
51
+ data: {
52
+ readonly id: string;
53
+ name: string;
54
+ description?: string;
55
+ metadata?: import("./schemas.js").components["schemas"]["Metadata"] | null;
56
+ readonly createdAt: Date;
57
+ readonly updatedAt: Date;
58
+ readonly deletedAt?: Date;
59
+ usageAttribution: import("./schemas.js").components["schemas"]["CustomerUsageAttribution"];
60
+ primaryEmail?: string;
61
+ currency?: import("./schemas.js").components["schemas"]["CurrencyCode"];
62
+ billingAddress?: import("./schemas.js").components["schemas"]["Address"];
63
+ readonly currentSubscriptionId?: string;
64
+ };
65
+ error?: never;
66
+ response: Response;
67
+ }>;
68
+ /**
69
+ * Update a customer
70
+ * @param id - The ID of the customer
71
+ * @param customer - The customer to update
72
+ * @param signal - An optional abort signal
73
+ * @returns The updated customer
74
+ */
75
+ update(id: operations['updateCustomer']['parameters']['path']['id'], customer: CustomerReplaceUpdate, signal?: AbortSignal): Promise<{
76
+ data?: never;
77
+ error: import("./utils.js").Problem;
78
+ response: Response;
79
+ } | {
80
+ data: {
81
+ readonly id: string;
82
+ name: string;
83
+ description?: string;
84
+ metadata?: import("./schemas.js").components["schemas"]["Metadata"] | null;
85
+ readonly createdAt: Date;
86
+ readonly updatedAt: Date;
87
+ readonly deletedAt?: Date;
88
+ usageAttribution: import("./schemas.js").components["schemas"]["CustomerUsageAttribution"];
89
+ primaryEmail?: string;
90
+ currency?: import("./schemas.js").components["schemas"]["CurrencyCode"];
91
+ billingAddress?: import("./schemas.js").components["schemas"]["Address"];
92
+ readonly currentSubscriptionId?: string;
93
+ };
94
+ error?: never;
95
+ response: Response;
96
+ }>;
97
+ /**
98
+ * Delete a customer
99
+ * @param id - The ID of the customer
100
+ * @param signal - An optional abort signal
101
+ * @returns The deleted customer
102
+ */
103
+ delete(id: operations['deleteCustomer']['parameters']['path']['id'], signal?: AbortSignal): Promise<{
104
+ data?: never;
105
+ error: import("./utils.js").Problem;
106
+ response: Response;
107
+ } | {
108
+ data: undefined;
109
+ error?: never;
110
+ response: Response;
111
+ }>;
112
+ /**
113
+ * List customers
114
+ * @param signal - An optional abort signal
115
+ * @returns The list of customers
116
+ */
117
+ list(query?: operations['listCustomers']['parameters']['query'], signal?: AbortSignal): Promise<{
118
+ data?: never;
119
+ error: import("./utils.js").Problem;
120
+ response: Response;
121
+ } | {
122
+ data: {
123
+ totalCount: number;
124
+ page: number;
125
+ pageSize: number;
126
+ items: import("./schemas.js").components["schemas"]["Customer"][];
127
+ };
128
+ error?: never;
129
+ response: Response;
130
+ }>;
131
+ }
132
+ /**
133
+ * Customer Apps
134
+ * Manage customer apps.
135
+ */
136
+ export declare class CustomerApps {
137
+ private client;
138
+ constructor(client: Client<paths, `${string}/${string}`>);
139
+ /**
140
+ * Upsert customer app data
141
+ * @param customerId - The ID of the customer
142
+ * @param appData - The app data to upsert
143
+ * @param signal - An optional abort signal
144
+ * @returns The upserted app data
145
+ */
146
+ upsert(customerId: operations['upsertCustomerAppData']['parameters']['path']['customerId'], appData: CustomerAppData[], signal?: AbortSignal): Promise<{
147
+ data?: never;
148
+ error: import("./utils.js").Problem;
149
+ response: Response;
150
+ } | {
151
+ data: ({
152
+ id?: string;
153
+ type: "stripe";
154
+ readonly app?: import("./schemas.js").components["schemas"]["StripeApp"];
155
+ stripeCustomerId: string;
156
+ stripeDefaultPaymentMethodId?: string;
157
+ } | {
158
+ readonly app?: import("./schemas.js").components["schemas"]["SandboxApp"];
159
+ id?: string;
160
+ type: "sandbox";
161
+ })[];
162
+ error?: never;
163
+ response: Response;
164
+ }>;
165
+ /**
166
+ * List customer app data
167
+ * @param customerId - The ID of the customer
168
+ * @param query - The query parameters
169
+ * @param signal - An optional abort signal
170
+ * @returns The list of customer app data
171
+ */
172
+ list(customerId: operations['listCustomerAppData']['parameters']['path']['customerId'], query?: operations['listCustomerAppData']['parameters']['query'], signal?: AbortSignal): Promise<{
173
+ data?: never;
174
+ error: import("./utils.js").Problem;
175
+ response: Response;
176
+ } | {
177
+ data: {
178
+ totalCount: number;
179
+ page: number;
180
+ pageSize: number;
181
+ items: import("./schemas.js").components["schemas"]["CustomerAppData"][];
182
+ };
183
+ error?: never;
184
+ response: Response;
185
+ }>;
186
+ /**
187
+ * Delete customer app data
188
+ * @param customerId - The ID of the customer
189
+ * @param appId - The ID of the app
190
+ * @param signal - An optional abort signal
191
+ * @returns The deleted customer app data
192
+ */
193
+ delete(customerId: operations['deleteCustomerAppData']['parameters']['path']['customerId'], appId: operations['deleteCustomerAppData']['parameters']['path']['appId'], signal?: AbortSignal): Promise<{
194
+ data?: never;
195
+ error: import("./utils.js").Problem;
196
+ response: Response;
197
+ } | {
198
+ data: undefined;
199
+ error?: never;
200
+ response: Response;
201
+ }>;
202
+ }
203
+ /**
204
+ * Customer Entitlements
205
+ */
206
+ export declare class CustomerEntitlements {
207
+ private client;
208
+ constructor(client: Client<paths, `${string}/${string}`>);
209
+ /**
210
+ * Get the value of an entitlement for a customer
211
+ * @param customerId - The ID of the customer
212
+ * @param featureKey - The key of the feature
213
+ * @param signal - An optional abort signal
214
+ * @returns The value of the entitlement
215
+ */
216
+ value(customerId: operations['getCustomerEntitlementValue']['parameters']['path']['customerId'], featureKey: operations['getCustomerEntitlementValue']['parameters']['path']['featureKey'], signal?: AbortSignal): Promise<{
217
+ data?: never;
218
+ error: import("./utils.js").Problem;
219
+ response: Response;
220
+ } | {
221
+ data: {
222
+ readonly hasAccess: boolean;
223
+ readonly balance?: number;
224
+ readonly usage?: number;
225
+ readonly overage?: number;
226
+ readonly config?: string;
227
+ };
228
+ error?: never;
229
+ response: Response;
230
+ }>;
231
+ }
@@ -0,0 +1,179 @@
1
+ import { transformResponse } from './utils.js';
2
+ /**
3
+ * Customers
4
+ * Manage customer subscription lifecycles and plan assignments.
5
+ */
6
+ export class Customers {
7
+ client;
8
+ apps;
9
+ entitlements;
10
+ constructor(client) {
11
+ this.client = client;
12
+ this.apps = new CustomerApps(client);
13
+ this.entitlements = new CustomerEntitlements(client);
14
+ }
15
+ /**
16
+ * Create a customer
17
+ * @param customer - The customer to create
18
+ * @param signal - An optional abort signal
19
+ * @returns The created customer
20
+ */
21
+ async create(customer, signal) {
22
+ const resp = await this.client.POST('/api/v1/customers', {
23
+ signal,
24
+ body: customer,
25
+ });
26
+ return transformResponse(resp);
27
+ }
28
+ /**
29
+ * Get a customer by ID
30
+ * @param id - The ID of the customer
31
+ * @param signal - An optional abort signal
32
+ * @returns The customer
33
+ */
34
+ async get(id, signal) {
35
+ const resp = await this.client.GET('/api/v1/customers/{id}', {
36
+ signal,
37
+ params: {
38
+ path: {
39
+ id,
40
+ },
41
+ },
42
+ });
43
+ return transformResponse(resp);
44
+ }
45
+ /**
46
+ * Update a customer
47
+ * @param id - The ID of the customer
48
+ * @param customer - The customer to update
49
+ * @param signal - An optional abort signal
50
+ * @returns The updated customer
51
+ */
52
+ async update(id, customer, signal) {
53
+ const resp = await this.client.PUT('/api/v1/customers/{id}', {
54
+ signal,
55
+ params: {
56
+ path: {
57
+ id,
58
+ },
59
+ },
60
+ body: customer,
61
+ });
62
+ return transformResponse(resp);
63
+ }
64
+ /**
65
+ * Delete a customer
66
+ * @param id - The ID of the customer
67
+ * @param signal - An optional abort signal
68
+ * @returns The deleted customer
69
+ */
70
+ async delete(id, signal) {
71
+ const resp = await this.client.DELETE('/api/v1/customers/{id}', {
72
+ signal,
73
+ params: {
74
+ path: {
75
+ id,
76
+ },
77
+ },
78
+ });
79
+ return transformResponse(resp);
80
+ }
81
+ /**
82
+ * List customers
83
+ * @param signal - An optional abort signal
84
+ * @returns The list of customers
85
+ */
86
+ async list(query, signal) {
87
+ const resp = await this.client.GET('/api/v1/customers', {
88
+ signal,
89
+ params: {
90
+ query,
91
+ },
92
+ });
93
+ return transformResponse(resp);
94
+ }
95
+ }
96
+ /**
97
+ * Customer Apps
98
+ * Manage customer apps.
99
+ */
100
+ export class CustomerApps {
101
+ client;
102
+ constructor(client) {
103
+ this.client = client;
104
+ }
105
+ /**
106
+ * Upsert customer app data
107
+ * @param customerId - The ID of the customer
108
+ * @param appData - The app data to upsert
109
+ * @param signal - An optional abort signal
110
+ * @returns The upserted app data
111
+ */
112
+ async upsert(customerId, appData, signal) {
113
+ const resp = await this.client.PUT('/api/v1/customers/{customerId}/apps', {
114
+ signal,
115
+ params: {
116
+ path: {
117
+ customerId,
118
+ },
119
+ },
120
+ body: appData,
121
+ });
122
+ return transformResponse(resp);
123
+ }
124
+ /**
125
+ * List customer app data
126
+ * @param customerId - The ID of the customer
127
+ * @param query - The query parameters
128
+ * @param signal - An optional abort signal
129
+ * @returns The list of customer app data
130
+ */
131
+ async list(customerId, query, signal) {
132
+ const resp = await this.client.GET('/api/v1/customers/{customerId}/apps', {
133
+ signal,
134
+ params: {
135
+ path: { customerId },
136
+ query,
137
+ },
138
+ });
139
+ return transformResponse(resp);
140
+ }
141
+ /**
142
+ * Delete customer app data
143
+ * @param customerId - The ID of the customer
144
+ * @param appId - The ID of the app
145
+ * @param signal - An optional abort signal
146
+ * @returns The deleted customer app data
147
+ */
148
+ async delete(customerId, appId, signal) {
149
+ const resp = await this.client.DELETE('/api/v1/customers/{customerId}/apps/{appId}', {
150
+ signal,
151
+ params: { path: { customerId, appId } },
152
+ });
153
+ return transformResponse(resp);
154
+ }
155
+ }
156
+ /**
157
+ * Customer Entitlements
158
+ */
159
+ export class CustomerEntitlements {
160
+ client;
161
+ constructor(client) {
162
+ this.client = client;
163
+ }
164
+ /**
165
+ * Get the value of an entitlement for a customer
166
+ * @param customerId - The ID of the customer
167
+ * @param featureKey - The key of the feature
168
+ * @param signal - An optional abort signal
169
+ * @returns The value of the entitlement
170
+ */
171
+ async value(customerId, featureKey, signal) {
172
+ const resp = await this.client.GET('/api/v1/customers/{customerId}/entitlements/{featureKey}/value', {
173
+ signal,
174
+ params: { path: { customerId, featureKey } },
175
+ });
176
+ return transformResponse(resp);
177
+ }
178
+ }
179
+ //# sourceMappingURL=customers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customers.js","sourceRoot":"","sources":["../../src/customers.ts"],"names":[],"mappings":"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"}