@openmeter/sdk 1.0.0-beta.2 → 1.0.0-beta.200

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 (137) hide show
  1. package/README.md +44 -65
  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/client/apps.cjs +174 -0
  6. package/dist/cjs/src/client/apps.d.cts +259 -0
  7. package/dist/cjs/src/client/apps.js.map +1 -0
  8. package/dist/cjs/src/client/billing.cjs +309 -0
  9. package/dist/cjs/src/client/billing.d.cts +510 -0
  10. package/dist/cjs/src/client/billing.js.map +1 -0
  11. package/dist/cjs/src/client/common.cjs +47 -0
  12. package/dist/cjs/src/client/common.d.cts +30 -0
  13. package/dist/cjs/src/client/common.js.map +1 -0
  14. package/dist/cjs/src/client/customers.cjs +185 -0
  15. package/dist/cjs/src/client/customers.d.cts +163 -0
  16. package/dist/cjs/src/client/customers.js.map +1 -0
  17. package/dist/cjs/src/client/entitlements.cjs +244 -0
  18. package/dist/cjs/src/client/entitlements.d.cts +442 -0
  19. package/dist/cjs/src/client/entitlements.js.map +1 -0
  20. package/dist/cjs/src/client/events.cjs +66 -0
  21. package/dist/cjs/src/client/events.d.cts +31 -0
  22. package/dist/cjs/src/client/events.js.map +1 -0
  23. package/dist/cjs/src/client/features.cjs +78 -0
  24. package/dist/cjs/src/client/features.d.cts +78 -0
  25. package/dist/cjs/src/client/features.js.map +1 -0
  26. package/dist/cjs/src/client/index.cjs +108 -0
  27. package/dist/cjs/src/client/index.d.cts +45 -0
  28. package/dist/cjs/src/client/index.js.map +1 -0
  29. package/dist/cjs/src/client/meters.cjs +93 -0
  30. package/dist/cjs/src/client/meters.d.cts +160 -0
  31. package/dist/cjs/src/client/meters.js.map +1 -0
  32. package/dist/cjs/src/client/notifications.cjs +249 -0
  33. package/dist/cjs/src/client/notifications.d.cts +219 -0
  34. package/dist/cjs/src/client/notifications.js.map +1 -0
  35. package/dist/cjs/src/client/plans.cjs +127 -0
  36. package/dist/cjs/src/client/plans.d.cts +142 -0
  37. package/dist/cjs/src/client/plans.js.map +1 -0
  38. package/dist/cjs/src/client/portal.cjs +55 -0
  39. package/dist/cjs/src/client/portal.d.cts +48 -0
  40. package/dist/cjs/src/client/portal.js.map +1 -0
  41. package/dist/cjs/src/client/schemas.cjs +3 -0
  42. package/dist/cjs/src/client/schemas.d.cts +17504 -0
  43. package/dist/cjs/src/client/schemas.js.map +1 -0
  44. package/dist/cjs/src/client/subjects.cjs +76 -0
  45. package/dist/cjs/src/client/subjects.d.cts +70 -0
  46. package/dist/cjs/src/client/subjects.js.map +1 -0
  47. package/dist/cjs/src/client/subscriptions.cjs +116 -0
  48. package/dist/cjs/src/client/subscriptions.d.cts +147 -0
  49. package/dist/cjs/src/client/subscriptions.js.map +1 -0
  50. package/dist/cjs/src/client/utils.cjs +69 -0
  51. package/dist/cjs/src/client/utils.d.cts +12 -0
  52. package/dist/cjs/src/client/utils.js.map +1 -0
  53. package/dist/cjs/src/portal/index.cjs +57 -0
  54. package/dist/cjs/src/portal/index.d.cts +104 -0
  55. package/dist/cjs/src/portal/index.js.map +1 -0
  56. package/dist/cjs/src/react/context.cjs +35 -0
  57. package/dist/cjs/src/react/context.d.cts +9 -0
  58. package/dist/cjs/src/react/context.js.map +1 -0
  59. package/dist/cjs/tsconfig.0d5556c7.tsbuildinfo +1 -0
  60. package/dist/cjs/tsconfig.3c7da474.tsbuildinfo +1 -0
  61. package/dist/index.d.ts +1 -11
  62. package/dist/index.js +2 -11
  63. package/dist/index.js.map +1 -0
  64. package/dist/src/client/apps.d.ts +259 -0
  65. package/dist/src/client/apps.js +168 -0
  66. package/dist/src/client/apps.js.map +1 -0
  67. package/dist/src/client/billing.d.ts +510 -0
  68. package/dist/src/client/billing.js +302 -0
  69. package/dist/src/client/billing.js.map +1 -0
  70. package/dist/src/client/common.d.ts +30 -0
  71. package/dist/src/client/common.js +42 -0
  72. package/dist/src/client/common.js.map +1 -0
  73. package/dist/src/client/customers.d.ts +163 -0
  74. package/dist/src/client/customers.js +179 -0
  75. package/dist/src/client/customers.js.map +1 -0
  76. package/dist/src/client/entitlements.d.ts +442 -0
  77. package/dist/src/client/entitlements.js +239 -0
  78. package/dist/src/client/entitlements.js.map +1 -0
  79. package/dist/src/client/events.d.ts +31 -0
  80. package/dist/src/client/events.js +58 -0
  81. package/dist/src/client/events.js.map +1 -0
  82. package/dist/src/client/features.d.ts +78 -0
  83. package/dist/src/client/features.js +74 -0
  84. package/dist/src/client/features.js.map +1 -0
  85. package/dist/src/client/index.d.ts +45 -0
  86. package/dist/src/client/index.js +68 -0
  87. package/dist/src/client/index.js.map +1 -0
  88. package/dist/src/client/meters.d.ts +160 -0
  89. package/dist/src/client/meters.js +89 -0
  90. package/dist/src/client/meters.js.map +1 -0
  91. package/dist/src/client/notifications.d.ts +219 -0
  92. package/dist/src/client/notifications.js +242 -0
  93. package/dist/src/client/notifications.js.map +1 -0
  94. package/dist/src/client/plans.d.ts +142 -0
  95. package/dist/src/client/plans.js +123 -0
  96. package/dist/src/client/plans.js.map +1 -0
  97. package/dist/src/client/portal.d.ts +48 -0
  98. package/dist/src/client/portal.js +51 -0
  99. package/dist/src/client/portal.js.map +1 -0
  100. package/dist/src/client/schemas.d.ts +17504 -0
  101. package/dist/src/client/schemas.js +2 -0
  102. package/dist/src/client/schemas.js.map +1 -0
  103. package/dist/src/client/subjects.d.ts +70 -0
  104. package/dist/src/client/subjects.js +72 -0
  105. package/dist/src/client/subjects.js.map +1 -0
  106. package/dist/src/client/subscriptions.d.ts +147 -0
  107. package/dist/src/client/subscriptions.js +112 -0
  108. package/dist/src/client/subscriptions.js.map +1 -0
  109. package/dist/src/client/utils.d.ts +12 -0
  110. package/dist/src/client/utils.js +63 -0
  111. package/dist/src/client/utils.js.map +1 -0
  112. package/dist/src/portal/index.d.ts +104 -0
  113. package/dist/src/portal/index.js +50 -0
  114. package/dist/src/portal/index.js.map +1 -0
  115. package/dist/src/react/context.d.ts +9 -0
  116. package/dist/src/react/context.js +16 -0
  117. package/dist/src/react/context.js.map +1 -0
  118. package/dist/tsconfig.tsbuildinfo +1 -1
  119. package/package.json +93 -49
  120. package/patches/openapi-typescript.patch +73 -0
  121. package/clients/client.ts +0 -153
  122. package/clients/event.ts +0 -109
  123. package/clients/meter.ts +0 -84
  124. package/dist/clients/client.d.ts +0 -40
  125. package/dist/clients/client.js +0 -101
  126. package/dist/clients/event.d.ts +0 -65
  127. package/dist/clients/event.js +0 -38
  128. package/dist/clients/meter.d.ts +0 -52
  129. package/dist/clients/meter.js +0 -52
  130. package/dist/schemas/openapi.d.ts +0 -414
  131. package/dist/schemas/openapi.js +0 -5
  132. package/dist/test/agent.d.ts +0 -2
  133. package/dist/test/agent.js +0 -105
  134. package/dist/test/mocks.d.ts +0 -11
  135. package/dist/test/mocks.js +0 -21
  136. package/index.ts +0 -17
  137. package/schemas/openapi.ts +0 -421
@@ -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, options) {
34
+ const resp = await this.client.POST('/api/v1/notification/channels', {
35
+ body: notification,
36
+ ...options,
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, options) {
47
+ const resp = await this.client.GET('/api/v1/notification/channels/{channelId}', {
48
+ params: {
49
+ path: {
50
+ channelId: id,
51
+ },
52
+ },
53
+ ...options,
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, options) {
65
+ const resp = await this.client.PUT('/api/v1/notification/channels/{channelId}', {
66
+ body: notification,
67
+ params: {
68
+ path: {
69
+ channelId: id,
70
+ },
71
+ },
72
+ ...options,
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, options) {
83
+ const resp = await this.client.GET('/api/v1/notification/channels', {
84
+ params: {
85
+ query,
86
+ },
87
+ ...options,
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, options) {
98
+ const resp = await this.client.DELETE('/api/v1/notification/channels/{channelId}', {
99
+ params: {
100
+ path: {
101
+ channelId: id,
102
+ },
103
+ },
104
+ ...options,
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, options) {
125
+ const resp = await this.client.POST('/api/v1/notification/rules', {
126
+ body: rule,
127
+ ...options,
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, options) {
138
+ const resp = await this.client.GET('/api/v1/notification/rules/{ruleId}', {
139
+ params: {
140
+ path: {
141
+ ruleId: id,
142
+ },
143
+ },
144
+ ...options,
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, options) {
156
+ const resp = await this.client.PUT('/api/v1/notification/rules/{ruleId}', {
157
+ body: rule,
158
+ params: {
159
+ path: {
160
+ ruleId: id,
161
+ },
162
+ },
163
+ ...options,
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, options) {
174
+ const resp = await this.client.GET('/api/v1/notification/rules', {
175
+ params: {
176
+ query,
177
+ },
178
+ ...options,
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, options) {
189
+ const resp = await this.client.DELETE('/api/v1/notification/rules/{ruleId}', {
190
+ params: {
191
+ path: {
192
+ ruleId: id,
193
+ },
194
+ },
195
+ ...options,
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, options) {
216
+ const resp = await this.client.GET('/api/v1/notification/events/{eventId}', {
217
+ params: {
218
+ path: {
219
+ eventId: id,
220
+ },
221
+ },
222
+ ...options,
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, options) {
233
+ const resp = await this.client.GET('/api/v1/notification/events', {
234
+ params: {
235
+ query,
236
+ },
237
+ ...options,
238
+ });
239
+ return transformResponse(resp);
240
+ }
241
+ }
242
+ //# sourceMappingURL=notifications.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notifications.js","sourceRoot":"","sources":["../../../src/client/notifications.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,142 @@
1
+ import type { RequestOptions } from './common.js';
2
+ import type { operations, paths, PlanCreate, PlanReplaceUpdate } from './schemas.js';
3
+ import type { Client } from 'openapi-fetch';
4
+ export declare class Plans {
5
+ private client;
6
+ constructor(client: Client<paths, `${string}/${string}`>);
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
+ create(plan: PlanCreate, options?: RequestOptions): Promise<{
14
+ readonly id: string;
15
+ name: string;
16
+ description?: string;
17
+ metadata?: import("./schemas.js").components["schemas"]["Metadata"] | null;
18
+ readonly createdAt: Date;
19
+ readonly updatedAt: Date;
20
+ readonly deletedAt?: Date;
21
+ key: string;
22
+ alignment?: import("./schemas.js").components["schemas"]["Alignment"];
23
+ readonly version: number;
24
+ currency: import("./schemas.js").components["schemas"]["CurrencyCode"];
25
+ readonly effectiveFrom?: Date;
26
+ readonly effectiveTo?: Date;
27
+ readonly status: import("./schemas.js").components["schemas"]["PlanStatus"];
28
+ phases: import("./schemas.js").components["schemas"]["PlanPhase"][];
29
+ }>;
30
+ /**
31
+ * Get a plan by ID or key
32
+ * @param idOrKey - The ID or key of the plan
33
+ * @param signal - An optional abort signal
34
+ * @returns The plan
35
+ */
36
+ get(id: operations['getPlan']['parameters']['path']['planId'], options?: RequestOptions): Promise<{
37
+ readonly id: string;
38
+ name: string;
39
+ description?: string;
40
+ metadata?: import("./schemas.js").components["schemas"]["Metadata"] | null;
41
+ readonly createdAt: Date;
42
+ readonly updatedAt: Date;
43
+ readonly deletedAt?: Date;
44
+ key: string;
45
+ alignment?: import("./schemas.js").components["schemas"]["Alignment"];
46
+ readonly version: number;
47
+ currency: import("./schemas.js").components["schemas"]["CurrencyCode"];
48
+ readonly effectiveFrom?: Date;
49
+ readonly effectiveTo?: Date;
50
+ readonly status: import("./schemas.js").components["schemas"]["PlanStatus"];
51
+ phases: import("./schemas.js").components["schemas"]["PlanPhase"][];
52
+ }>;
53
+ /**
54
+ * List plans
55
+ * @param query - The query parameters
56
+ * @param signal - An optional abort signal
57
+ * @returns The list of plans
58
+ */
59
+ list(query?: operations['listPlans']['parameters']['query'], options?: RequestOptions): Promise<{
60
+ totalCount: number;
61
+ page: number;
62
+ pageSize: number;
63
+ items: import("./schemas.js").components["schemas"]["Plan"][];
64
+ }>;
65
+ /**
66
+ * Update a plan
67
+ * @param id - The ID of the plan
68
+ * @param plan - The plan to update
69
+ * @param signal - An optional abort signal
70
+ * @returns The updated plan
71
+ */
72
+ update(id: operations['updatePlan']['parameters']['path']['planId'], plan: PlanReplaceUpdate, options?: RequestOptions): Promise<{
73
+ readonly id: string;
74
+ name: string;
75
+ description?: string;
76
+ metadata?: import("./schemas.js").components["schemas"]["Metadata"] | null;
77
+ readonly createdAt: Date;
78
+ readonly updatedAt: Date;
79
+ readonly deletedAt?: Date;
80
+ key: string;
81
+ alignment?: import("./schemas.js").components["schemas"]["Alignment"];
82
+ readonly version: number;
83
+ currency: import("./schemas.js").components["schemas"]["CurrencyCode"];
84
+ readonly effectiveFrom?: Date;
85
+ readonly effectiveTo?: Date;
86
+ readonly status: import("./schemas.js").components["schemas"]["PlanStatus"];
87
+ phases: import("./schemas.js").components["schemas"]["PlanPhase"][];
88
+ }>;
89
+ /**
90
+ * Delete a plan
91
+ * @param id - The ID of the plan
92
+ * @param signal - An optional abort signal
93
+ * @returns The deleted plan
94
+ */
95
+ delete(id: operations['deletePlan']['parameters']['path']['planId'], options?: RequestOptions): Promise<undefined>;
96
+ /**
97
+ * Archive a plan
98
+ * @param id - The ID of the plan
99
+ * @param signal - An optional abort signal
100
+ * @returns The archived plan
101
+ */
102
+ archive(id: operations['archivePlan']['parameters']['path']['planId'], options?: RequestOptions): Promise<{
103
+ readonly id: string;
104
+ name: string;
105
+ description?: string;
106
+ metadata?: import("./schemas.js").components["schemas"]["Metadata"] | null;
107
+ readonly createdAt: Date;
108
+ readonly updatedAt: Date;
109
+ readonly deletedAt?: Date;
110
+ key: string;
111
+ alignment?: import("./schemas.js").components["schemas"]["Alignment"];
112
+ readonly version: number;
113
+ currency: import("./schemas.js").components["schemas"]["CurrencyCode"];
114
+ readonly effectiveFrom?: Date;
115
+ readonly effectiveTo?: Date;
116
+ readonly status: import("./schemas.js").components["schemas"]["PlanStatus"];
117
+ phases: import("./schemas.js").components["schemas"]["PlanPhase"][];
118
+ }>;
119
+ /**
120
+ * Publish a plan
121
+ * @param id - The ID of the plan
122
+ * @param signal - An optional abort signal
123
+ * @returns The published plan
124
+ */
125
+ publish(id: operations['publishPlan']['parameters']['path']['planId'], options?: RequestOptions): Promise<{
126
+ readonly id: string;
127
+ name: string;
128
+ description?: string;
129
+ metadata?: import("./schemas.js").components["schemas"]["Metadata"] | null;
130
+ readonly createdAt: Date;
131
+ readonly updatedAt: Date;
132
+ readonly deletedAt?: Date;
133
+ key: string;
134
+ alignment?: import("./schemas.js").components["schemas"]["Alignment"];
135
+ readonly version: number;
136
+ currency: import("./schemas.js").components["schemas"]["CurrencyCode"];
137
+ readonly effectiveFrom?: Date;
138
+ readonly effectiveTo?: Date;
139
+ readonly status: import("./schemas.js").components["schemas"]["PlanStatus"];
140
+ phases: import("./schemas.js").components["schemas"]["PlanPhase"][];
141
+ }>;
142
+ }
@@ -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, options) {
14
+ const resp = await this.client.POST('/api/v1/plans', {
15
+ body: plan,
16
+ ...options,
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, options) {
27
+ const resp = await this.client.GET('/api/v1/plans/{planId}', {
28
+ params: {
29
+ path: {
30
+ planId: id,
31
+ },
32
+ },
33
+ ...options,
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, options) {
44
+ const resp = await this.client.GET('/api/v1/plans', {
45
+ params: {
46
+ query,
47
+ },
48
+ ...options,
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, options) {
60
+ const resp = await this.client.PUT('/api/v1/plans/{planId}', {
61
+ body: plan,
62
+ params: {
63
+ path: {
64
+ planId: id,
65
+ },
66
+ },
67
+ ...options,
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, options) {
78
+ const resp = await this.client.DELETE('/api/v1/plans/{planId}', {
79
+ params: {
80
+ path: {
81
+ planId: id,
82
+ },
83
+ },
84
+ ...options,
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, options) {
95
+ const resp = await this.client.POST('/api/v1/plans/{planId}/archive', {
96
+ params: {
97
+ path: {
98
+ planId: id,
99
+ },
100
+ },
101
+ ...options,
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, options) {
112
+ const resp = await this.client.POST('/api/v1/plans/{planId}/publish', {
113
+ params: {
114
+ path: {
115
+ planId: id,
116
+ },
117
+ },
118
+ ...options,
119
+ });
120
+ return transformResponse(resp);
121
+ }
122
+ }
123
+ //# sourceMappingURL=plans.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plans.js","sourceRoot":"","sources":["../../../src/client/plans.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAU9C,MAAM,OAAO,KAAK;IACI;IAApB,YAAoB,MAA4C;QAA5C,WAAM,GAAN,MAAM,CAAsC;IAAG,CAAC;IAEpE;;;;;OAKG;IACI,KAAK,CAAC,MAAM,CAAC,IAAgB,EAAE,OAAwB;QAC5D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE;YACnD,IAAI,EAAE,IAAI;YACV,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,GAAG,CACd,EAAyD,EACzD,OAAwB;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wBAAwB,EAAE;YAC3D,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,MAAM,EAAE,EAAE;iBACX;aACF;YACD,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,IAAI,CACf,KAAsD,EACtD,OAAwB;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE;YAClD,MAAM,EAAE;gBACN,KAAK;aACN;YACD,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,MAAM,CACjB,EAA4D,EAC5D,IAAuB,EACvB,OAAwB;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wBAAwB,EAAE;YAC3D,IAAI,EAAE,IAAI;YACV,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,MAAM,EAAE,EAAE;iBACX;aACF;YACD,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,MAAM,CACjB,EAA4D,EAC5D,OAAwB;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,wBAAwB,EAAE;YAC9D,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,MAAM,EAAE,EAAE;iBACX;aACF;YACD,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,OAAO,CAClB,EAA6D,EAC7D,OAAwB;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE;YACpE,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,MAAM,EAAE,EAAE;iBACX;aACF;YACD,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,OAAO,CAClB,EAA6D,EAC7D,OAAwB;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE;YACpE,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,MAAM,EAAE,EAAE;iBACX;aACF;YACD,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;CACF"}
@@ -0,0 +1,48 @@
1
+ import type { RequestOptions } from './common.js';
2
+ import type { operations, paths, PortalToken } from './schemas.js';
3
+ import type { Client } from 'openapi-fetch';
4
+ /**
5
+ * Portal
6
+ * Manage portal tokens.
7
+ */
8
+ export declare class Portal {
9
+ private client;
10
+ constructor(client: Client<paths, `${string}/${string}`>);
11
+ /**
12
+ * Create a consumer portal token
13
+ * @param request - The request body
14
+ * @param options - The request options
15
+ * @returns The portal token
16
+ */
17
+ create(body: PortalToken, options?: RequestOptions): Promise<{
18
+ readonly id?: string;
19
+ subject: string;
20
+ readonly expiresAt?: Date;
21
+ readonly expired?: boolean;
22
+ readonly createdAt?: Date;
23
+ readonly token?: string;
24
+ allowedMeterSlugs?: string[];
25
+ }>;
26
+ /**
27
+ * List consumer portal tokens
28
+ * @param query - The query parameters
29
+ * @param options - The request options
30
+ * @returns The portal tokens
31
+ */
32
+ list(query?: operations['listPortalTokens']['parameters']['query'], options?: RequestOptions): Promise<{
33
+ readonly id?: string;
34
+ subject: string;
35
+ readonly expiresAt?: Date;
36
+ readonly expired?: boolean;
37
+ readonly createdAt?: Date;
38
+ readonly token?: string;
39
+ allowedMeterSlugs?: string[];
40
+ }[]>;
41
+ /**
42
+ * Invalidate consumer portal tokens
43
+ * @param body - The id or subject to invalidate
44
+ * @param options - The request options
45
+ * @returns The portal token
46
+ */
47
+ invalidate(body: operations['invalidatePortalTokens']['requestBody']['content']['application/json'], options?: RequestOptions): Promise<undefined>;
48
+ }
@@ -0,0 +1,51 @@
1
+ import { transformResponse } from './utils.js';
2
+ /**
3
+ * Portal
4
+ * Manage portal tokens.
5
+ */
6
+ export class Portal {
7
+ client;
8
+ constructor(client) {
9
+ this.client = client;
10
+ }
11
+ /**
12
+ * Create a consumer portal token
13
+ * @param request - The request body
14
+ * @param options - The request options
15
+ * @returns The portal token
16
+ */
17
+ async create(body, options) {
18
+ const resp = await this.client.POST('/api/v1/portal/tokens', {
19
+ body,
20
+ ...options,
21
+ });
22
+ return transformResponse(resp);
23
+ }
24
+ /**
25
+ * List consumer portal tokens
26
+ * @param query - The query parameters
27
+ * @param options - The request options
28
+ * @returns The portal tokens
29
+ */
30
+ async list(query, options) {
31
+ const resp = await this.client.GET('/api/v1/portal/tokens', {
32
+ params: { query },
33
+ ...options,
34
+ });
35
+ return transformResponse(resp);
36
+ }
37
+ /**
38
+ * Invalidate consumer portal tokens
39
+ * @param body - The id or subject to invalidate
40
+ * @param options - The request options
41
+ * @returns The portal token
42
+ */
43
+ async invalidate(body, options) {
44
+ const resp = await this.client.POST('/api/v1/portal/tokens/invalidate', {
45
+ body,
46
+ ...options,
47
+ });
48
+ return transformResponse(resp);
49
+ }
50
+ }
51
+ //# sourceMappingURL=portal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"portal.js","sourceRoot":"","sources":["../../../src/client/portal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAK9C;;;GAGG;AACH,MAAM,OAAO,MAAM;IACG;IAApB,YAAoB,MAA4C;QAA5C,WAAM,GAAN,MAAM,CAAsC;IAAI,CAAC;IAErE;;;;;OAKG;IACI,KAAK,CAAC,MAAM,CAAC,IAAiB,EAAE,OAAwB;QAC7D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE;YAC3D,IAAI;YACJ,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,IAAI,CACf,KAA6D,EAC7D,OAAwB;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAuB,EAAE;YAC1D,MAAM,EAAE,EAAE,KAAK,EAAE;YACjB,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,UAAU,CACrB,IAAwF,EACxF,OAAwB;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE;YACtE,IAAI;YACJ,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;CACF"}