@openmeter/sdk 1.0.0-beta.1 → 1.0.0-beta.101

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 (81) hide show
  1. package/README.md +276 -26
  2. package/dist/cjs/clients/client.cjs +120 -0
  3. package/dist/cjs/clients/client.d.cts +40 -0
  4. package/dist/cjs/clients/client.js.map +1 -0
  5. package/dist/cjs/clients/entitlement.cjs +27 -0
  6. package/dist/cjs/clients/entitlement.d.cts +25 -0
  7. package/dist/cjs/clients/entitlement.js.map +1 -0
  8. package/dist/cjs/clients/event.cjs +71 -0
  9. package/dist/cjs/clients/event.d.cts +79 -0
  10. package/dist/cjs/clients/event.js.map +1 -0
  11. package/dist/cjs/clients/feature.cjs +75 -0
  12. package/dist/cjs/clients/feature.d.cts +40 -0
  13. package/dist/cjs/clients/feature.js.map +1 -0
  14. package/dist/cjs/clients/grant.cjs +27 -0
  15. package/dist/cjs/clients/grant.d.cts +15 -0
  16. package/dist/cjs/clients/grant.js.map +1 -0
  17. package/dist/cjs/clients/meter.cjs +69 -0
  18. package/dist/cjs/clients/meter.d.cts +75 -0
  19. package/dist/cjs/clients/meter.js.map +1 -0
  20. package/dist/cjs/clients/portal.cjs +41 -0
  21. package/dist/cjs/clients/portal.d.cts +22 -0
  22. package/dist/cjs/clients/portal.js.map +1 -0
  23. package/dist/cjs/clients/subject.cjs +226 -0
  24. package/dist/cjs/clients/subject.d.cts +117 -0
  25. package/dist/cjs/clients/subject.js.map +1 -0
  26. package/dist/cjs/index.cjs +33 -0
  27. package/dist/cjs/index.d.cts +21 -0
  28. package/dist/cjs/index.js.map +1 -0
  29. package/dist/cjs/schemas/openapi.cjs +7 -0
  30. package/dist/cjs/schemas/openapi.d.cts +2078 -0
  31. package/dist/cjs/schemas/openapi.js.map +1 -0
  32. package/dist/cjs/test/agent.cjs +470 -0
  33. package/dist/cjs/test/agent.d.cts +2 -0
  34. package/dist/cjs/test/agent.js.map +1 -0
  35. package/dist/cjs/test/mocks.cjs +152 -0
  36. package/dist/cjs/test/mocks.d.cts +25 -0
  37. package/dist/cjs/test/mocks.js.map +1 -0
  38. package/dist/cjs/tsconfig.68d5eed0.tsbuildinfo +1 -0
  39. package/dist/cjs/tsconfig.ae38b1d6.tsbuildinfo +1 -0
  40. package/dist/clients/client.d.ts +3 -3
  41. package/dist/clients/client.js +24 -10
  42. package/dist/clients/client.js.map +1 -0
  43. package/dist/clients/entitlement.d.ts +25 -0
  44. package/dist/clients/entitlement.js +23 -0
  45. package/dist/clients/entitlement.js.map +1 -0
  46. package/dist/clients/event.d.ts +16 -2
  47. package/dist/clients/event.js +44 -18
  48. package/dist/clients/event.js.map +1 -0
  49. package/dist/clients/feature.d.ts +40 -0
  50. package/dist/clients/feature.js +71 -0
  51. package/dist/clients/feature.js.map +1 -0
  52. package/dist/clients/grant.d.ts +15 -0
  53. package/dist/clients/grant.js +23 -0
  54. package/dist/clients/grant.js.map +1 -0
  55. package/dist/clients/meter.d.ts +30 -7
  56. package/dist/clients/meter.js +17 -4
  57. package/dist/clients/meter.js.map +1 -0
  58. package/dist/clients/portal.d.ts +22 -0
  59. package/dist/clients/portal.js +37 -0
  60. package/dist/clients/portal.js.map +1 -0
  61. package/dist/clients/subject.d.ts +117 -0
  62. package/dist/clients/subject.js +222 -0
  63. package/dist/clients/subject.js.map +1 -0
  64. package/dist/index.d.ts +12 -2
  65. package/dist/index.js +16 -0
  66. package/dist/index.js.map +1 -0
  67. package/dist/schemas/openapi.d.ts +1876 -212
  68. package/dist/schemas/openapi.js +1 -0
  69. package/dist/schemas/openapi.js.map +1 -0
  70. package/dist/test/agent.js +394 -32
  71. package/dist/test/agent.js.map +1 -0
  72. package/dist/test/mocks.d.ts +15 -1
  73. package/dist/test/mocks.js +136 -8
  74. package/dist/test/mocks.js.map +1 -0
  75. package/dist/tsconfig.tsbuildinfo +1 -1
  76. package/package.json +65 -51
  77. package/clients/client.ts +0 -153
  78. package/clients/event.ts +0 -109
  79. package/clients/meter.ts +0 -84
  80. package/index.ts +0 -17
  81. package/schemas/openapi.ts +0 -421
@@ -0,0 +1,226 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SubjectClient = void 0;
4
+ const client_js_1 = require("./client.cjs");
5
+ class SubjectClient extends client_js_1.BaseClient {
6
+ constructor(config) {
7
+ super(config);
8
+ }
9
+ /**
10
+ * Upsert subject
11
+ * Useful to map display name and metadata to subjects
12
+ * @note OpenMeter Cloud only feature
13
+ */
14
+ async upsert(subject, options) {
15
+ return await this.request({
16
+ path: '/api/v1/subjects',
17
+ method: 'POST',
18
+ headers: {
19
+ 'Content-Type': 'application/json',
20
+ },
21
+ body: JSON.stringify(subject),
22
+ options,
23
+ });
24
+ }
25
+ /**
26
+ * Get subject by id or key
27
+ * @note OpenMeter Cloud only feature
28
+ */
29
+ async get(idOrKey, options) {
30
+ return await this.request({
31
+ path: `/api/v1/subjects/${idOrKey}`,
32
+ method: 'GET',
33
+ options,
34
+ });
35
+ }
36
+ /**
37
+ * List subjects
38
+ * @note OpenMeter Cloud only feature
39
+ */
40
+ async list(options) {
41
+ return await this.request({
42
+ path: '/api/v1/subjects',
43
+ method: 'GET',
44
+ options,
45
+ });
46
+ }
47
+ /**
48
+ * Delete subject by id or key
49
+ * @note OpenMeter Cloud only feature
50
+ */
51
+ async delete(idOrKey, options) {
52
+ return await this.request({
53
+ path: `/api/v1/subjects/${idOrKey}`,
54
+ method: 'DELETE',
55
+ options,
56
+ });
57
+ }
58
+ /** Entitlements **/
59
+ /**
60
+ * Create Entitlement
61
+ * Entitlements allows you to manage subject feature access, balances, and usage limits.
62
+ *
63
+ * @example
64
+ * // Issue 10,000,000 tokens every month
65
+ * const entitlement = await openmeter.subjects.createEntitlement('customer-1', {
66
+ * type: 'metered',
67
+ * featureKey: 'ai_tokens',
68
+ * usagePeriod: {
69
+ * interval: 'MONTH',
70
+ * },
71
+ * issueAfterReset: 10000000,
72
+ * })
73
+ */
74
+ async createEntitlement(subjectIdOrKey, input, options) {
75
+ return await this.request({
76
+ path: `/api/v1/subjects/${subjectIdOrKey}/entitlements`,
77
+ method: 'POST',
78
+ headers: {
79
+ 'Content-Type': 'application/json',
80
+ },
81
+ body: JSON.stringify(input),
82
+ options,
83
+ });
84
+ }
85
+ /**
86
+ * List entitlements
87
+ * @example
88
+ * const entitlement = await openmeter.subjects.listEntitlements('customer-1')
89
+ */
90
+ async listEntitlements(subjectIdOrKey, params, options) {
91
+ const searchParams = params
92
+ ? client_js_1.BaseClient.toURLSearchParams(params)
93
+ : undefined;
94
+ return await this.request({
95
+ path: `/api/v1/subjects/${subjectIdOrKey}/entitlements`,
96
+ method: 'GET',
97
+ searchParams,
98
+ options,
99
+ });
100
+ }
101
+ /**
102
+ * Get entitlement by ID by Feature ID or by Feature Key
103
+ *
104
+ * @example
105
+ * const entitlement = await openmeter.subjects.getEntitlement('customer-1', 'ai_tokens')
106
+ */
107
+ async getEntitlement(subjectIdOrKey, entitlementIdOrFeatureIdOrFeatureKey, options) {
108
+ return await this.request({
109
+ path: `/api/v1/subjects/${subjectIdOrKey}/entitlements/${entitlementIdOrFeatureIdOrFeatureKey}`,
110
+ method: 'GET',
111
+ options,
112
+ });
113
+ }
114
+ /**
115
+ * Delete entitlement by ID by Feature ID or by Feature Key
116
+ * @example
117
+ * await openmeter.deleteEntitlement('customer-1', 'ai_tokens')
118
+ */
119
+ async deleteEntitlement(subjectIdOrKey, entitlementIdOrFeatureIdOrFeatureKey, options) {
120
+ return await this.request({
121
+ path: `/api/v1/subjects/${subjectIdOrKey}/entitlements/${entitlementIdOrFeatureIdOrFeatureKey}`,
122
+ method: 'DELETE',
123
+ options,
124
+ });
125
+ }
126
+ /**
127
+ * Get entitlement value by ID by Feature ID or by Feature Key
128
+ *
129
+ * @example
130
+ * const value = await openmeter.subjects.getEntitlementValue('customer-1', 'ai_tokens')
131
+ */
132
+ async getEntitlementValue(subjectIdOrKey, entitlementIdOrFeatureIdOrFeatureKey, options) {
133
+ return await this.request({
134
+ path: `/api/v1/subjects/${subjectIdOrKey}/entitlements/${entitlementIdOrFeatureIdOrFeatureKey}/value`,
135
+ method: 'GET',
136
+ options,
137
+ });
138
+ }
139
+ /**
140
+ * Get entitlement history by ID by Feature ID or by Feature Key
141
+ * @example
142
+ * const entitlement = await openmeter.subjects.getEntitlementHistory('customer-1', 'ai_tokens')
143
+ */
144
+ async getEntitlementHistory(subjectIdOrKey, entitlementIdOrFeatureIdOrFeatureKey, params, options) {
145
+ const searchParams = params
146
+ ? client_js_1.BaseClient.toURLSearchParams(params)
147
+ : undefined;
148
+ return await this.request({
149
+ path: `/api/v1/subjects/${subjectIdOrKey}/entitlements/${entitlementIdOrFeatureIdOrFeatureKey}/history`,
150
+ method: 'GET',
151
+ searchParams,
152
+ options,
153
+ });
154
+ }
155
+ /**
156
+ * Reset Entitlement Usage
157
+ * Reset the entitlement usage and start a new period. Eligible grants will be rolled over
158
+ *
159
+ * @example
160
+ * const entitlement = await openmeter.subjects.resetEntitlementUsage('customer-1', 'ai_tokens', {
161
+ * retainAnchor: true
162
+ * })
163
+ */
164
+ async resetEntitlementUsage(subjectIdOrKey, entitlementIdOrFeatureIdOrFeatureKey, input, options) {
165
+ return await this.request({
166
+ path: `/api/v1/subjects/${subjectIdOrKey}/entitlements/${entitlementIdOrFeatureIdOrFeatureKey}/reset`,
167
+ method: 'POST',
168
+ headers: {
169
+ 'Content-Type': 'application/json',
170
+ },
171
+ body: JSON.stringify(input),
172
+ options,
173
+ });
174
+ }
175
+ /** Entitlement Grant **/
176
+ /**
177
+ * Create Entitlement Grant
178
+ * Create a grant for an entitlement.
179
+ *
180
+ * @example
181
+ * const grant = await openmeter.subjects.createEntitlementGrant('customer-1', 'ai_tokens', {
182
+ * amount: 100,
183
+ * priority: 1,
184
+ * effectiveAt: '2023-01-01T00:00:00Z',
185
+ * expiration: {
186
+ * duration: 'HOUR',
187
+ * count: 12,
188
+ * },
189
+ * minRolloverAmount: 100,
190
+ * maxRolloverAmount: 100,
191
+ * recurrence: {
192
+ * interval: 'MONTH',
193
+ * anchor: '2024-06-28T18:29:44.867Z',
194
+ * },
195
+ * })
196
+ */
197
+ async createEntitlementGrant(subjectIdOrKey, entitlementIdOrFeatureIdOrFeatureKey, input, options) {
198
+ return await this.request({
199
+ path: `/api/v1/subjects/${subjectIdOrKey}/entitlements/${entitlementIdOrFeatureIdOrFeatureKey}/grants`,
200
+ method: 'POST',
201
+ headers: {
202
+ 'Content-Type': 'application/json',
203
+ },
204
+ body: JSON.stringify(input),
205
+ options,
206
+ });
207
+ }
208
+ /**
209
+ * List entitlement grants
210
+ * @example
211
+ * const entitlement = await openmeter.subjects.listEntitlementGrants('customer-1', 'ai_tokens)
212
+ */
213
+ async listEntitlementGrants(subjectIdOrKey, entitlementIdOrFeatureIdOrFeatureKey, params, options) {
214
+ const searchParams = params
215
+ ? client_js_1.BaseClient.toURLSearchParams(params)
216
+ : undefined;
217
+ return await this.request({
218
+ path: `/api/v1/subjects/${subjectIdOrKey}/entitlements/${entitlementIdOrFeatureIdOrFeatureKey}/grants`,
219
+ method: 'GET',
220
+ searchParams,
221
+ options,
222
+ });
223
+ }
224
+ }
225
+ exports.SubjectClient = SubjectClient;
226
+ //# sourceMappingURL=subject.js.map
@@ -0,0 +1,117 @@
1
+ import { components } from '../schemas/openapi.cjs';
2
+ import { RequestOptions, BaseClient, OpenMeterConfig } from './client.cjs';
3
+ import { Entitlement, EntitlementCreateInputs, EntitlementResetInputs, EntitlementValue, GetEntitlementHistoryQueryParams, ListEntitlementQueryParams, WindowedBalanceHistory } from './entitlement.cjs';
4
+ import { EntitlementGrant, EntitlementGrantCreateInput, ListEntitlementGrantQueryParams } from './grant.cjs';
5
+ export type Subject = components['schemas']['Subject'];
6
+ export declare class SubjectClient extends BaseClient {
7
+ constructor(config: OpenMeterConfig);
8
+ /**
9
+ * Upsert subject
10
+ * Useful to map display name and metadata to subjects
11
+ * @note OpenMeter Cloud only feature
12
+ */
13
+ upsert(subject: Omit<Subject, 'id'>[], options?: RequestOptions): Promise<Subject[]>;
14
+ /**
15
+ * Get subject by id or key
16
+ * @note OpenMeter Cloud only feature
17
+ */
18
+ get(idOrKey: string, options?: RequestOptions): Promise<Subject>;
19
+ /**
20
+ * List subjects
21
+ * @note OpenMeter Cloud only feature
22
+ */
23
+ list(options?: RequestOptions): Promise<Subject[]>;
24
+ /**
25
+ * Delete subject by id or key
26
+ * @note OpenMeter Cloud only feature
27
+ */
28
+ delete(idOrKey: string, options?: RequestOptions): Promise<void>;
29
+ /** Entitlements **/
30
+ /**
31
+ * Create Entitlement
32
+ * Entitlements allows you to manage subject feature access, balances, and usage limits.
33
+ *
34
+ * @example
35
+ * // Issue 10,000,000 tokens every month
36
+ * const entitlement = await openmeter.subjects.createEntitlement('customer-1', {
37
+ * type: 'metered',
38
+ * featureKey: 'ai_tokens',
39
+ * usagePeriod: {
40
+ * interval: 'MONTH',
41
+ * },
42
+ * issueAfterReset: 10000000,
43
+ * })
44
+ */
45
+ createEntitlement(subjectIdOrKey: string, input: EntitlementCreateInputs, options?: RequestOptions): Promise<Entitlement>;
46
+ /**
47
+ * List entitlements
48
+ * @example
49
+ * const entitlement = await openmeter.subjects.listEntitlements('customer-1')
50
+ */
51
+ listEntitlements(subjectIdOrKey: string, params?: ListEntitlementQueryParams, options?: RequestOptions): Promise<Entitlement[]>;
52
+ /**
53
+ * Get entitlement by ID by Feature ID or by Feature Key
54
+ *
55
+ * @example
56
+ * const entitlement = await openmeter.subjects.getEntitlement('customer-1', 'ai_tokens')
57
+ */
58
+ getEntitlement(subjectIdOrKey: string, entitlementIdOrFeatureIdOrFeatureKey: string, options?: RequestOptions): Promise<Entitlement>;
59
+ /**
60
+ * Delete entitlement by ID by Feature ID or by Feature Key
61
+ * @example
62
+ * await openmeter.deleteEntitlement('customer-1', 'ai_tokens')
63
+ */
64
+ deleteEntitlement(subjectIdOrKey: string, entitlementIdOrFeatureIdOrFeatureKey: string, options?: RequestOptions): Promise<void>;
65
+ /**
66
+ * Get entitlement value by ID by Feature ID or by Feature Key
67
+ *
68
+ * @example
69
+ * const value = await openmeter.subjects.getEntitlementValue('customer-1', 'ai_tokens')
70
+ */
71
+ getEntitlementValue(subjectIdOrKey: string, entitlementIdOrFeatureIdOrFeatureKey: string, options?: RequestOptions): Promise<EntitlementValue>;
72
+ /**
73
+ * Get entitlement history by ID by Feature ID or by Feature Key
74
+ * @example
75
+ * const entitlement = await openmeter.subjects.getEntitlementHistory('customer-1', 'ai_tokens')
76
+ */
77
+ getEntitlementHistory(subjectIdOrKey: string, entitlementIdOrFeatureIdOrFeatureKey: string, params?: GetEntitlementHistoryQueryParams, options?: RequestOptions): Promise<WindowedBalanceHistory[]>;
78
+ /**
79
+ * Reset Entitlement Usage
80
+ * Reset the entitlement usage and start a new period. Eligible grants will be rolled over
81
+ *
82
+ * @example
83
+ * const entitlement = await openmeter.subjects.resetEntitlementUsage('customer-1', 'ai_tokens', {
84
+ * retainAnchor: true
85
+ * })
86
+ */
87
+ resetEntitlementUsage(subjectIdOrKey: string, entitlementIdOrFeatureIdOrFeatureKey: string, input: EntitlementResetInputs, options?: RequestOptions): Promise<Entitlement>;
88
+ /** Entitlement Grant **/
89
+ /**
90
+ * Create Entitlement Grant
91
+ * Create a grant for an entitlement.
92
+ *
93
+ * @example
94
+ * const grant = await openmeter.subjects.createEntitlementGrant('customer-1', 'ai_tokens', {
95
+ * amount: 100,
96
+ * priority: 1,
97
+ * effectiveAt: '2023-01-01T00:00:00Z',
98
+ * expiration: {
99
+ * duration: 'HOUR',
100
+ * count: 12,
101
+ * },
102
+ * minRolloverAmount: 100,
103
+ * maxRolloverAmount: 100,
104
+ * recurrence: {
105
+ * interval: 'MONTH',
106
+ * anchor: '2024-06-28T18:29:44.867Z',
107
+ * },
108
+ * })
109
+ */
110
+ createEntitlementGrant(subjectIdOrKey: string, entitlementIdOrFeatureIdOrFeatureKey: string, input: EntitlementGrantCreateInput, options?: RequestOptions): Promise<EntitlementGrant>;
111
+ /**
112
+ * List entitlement grants
113
+ * @example
114
+ * const entitlement = await openmeter.subjects.listEntitlementGrants('customer-1', 'ai_tokens)
115
+ */
116
+ listEntitlementGrants(subjectIdOrKey: string, entitlementIdOrFeatureIdOrFeatureKey: string, params?: ListEntitlementGrantQueryParams, options?: RequestOptions): Promise<EntitlementGrant[]>;
117
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subject.js","sourceRoot":"","sources":["../../../clients/subject.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OpenMeter = exports.WindowSize = exports.MeterAggregation = void 0;
4
+ const entitlement_js_1 = require("./clients/entitlement.cjs");
5
+ const event_js_1 = require("./clients/event.cjs");
6
+ const feature_js_1 = require("./clients/feature.cjs");
7
+ const grant_js_1 = require("./clients/grant.cjs");
8
+ const meter_js_1 = require("./clients/meter.cjs");
9
+ const portal_js_1 = require("./clients/portal.cjs");
10
+ const subject_js_1 = require("./clients/subject.cjs");
11
+ var meter_js_2 = require("./clients/meter.cjs");
12
+ Object.defineProperty(exports, "MeterAggregation", { enumerable: true, get: function () { return meter_js_2.MeterAggregation; } });
13
+ Object.defineProperty(exports, "WindowSize", { enumerable: true, get: function () { return meter_js_2.WindowSize; } });
14
+ class OpenMeter {
15
+ events;
16
+ meters;
17
+ portal;
18
+ subjects;
19
+ features;
20
+ entitlements;
21
+ grants;
22
+ constructor(config) {
23
+ this.events = new event_js_1.EventsClient(config);
24
+ this.meters = new meter_js_1.MetersClient(config);
25
+ this.portal = new portal_js_1.PortalClient(config);
26
+ this.subjects = new subject_js_1.SubjectClient(config);
27
+ this.features = new feature_js_1.FeatureClient(config);
28
+ this.entitlements = new entitlement_js_1.EntitlementClient(config);
29
+ this.grants = new grant_js_1.GrantClient(config);
30
+ }
31
+ }
32
+ exports.OpenMeter = OpenMeter;
33
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,21 @@
1
+ import { OpenMeterConfig } from './clients/client.cjs';
2
+ import { EntitlementClient } from './clients/entitlement.cjs';
3
+ import { EventsClient } from './clients/event.cjs';
4
+ import { FeatureClient } from './clients/feature.cjs';
5
+ import { GrantClient } from './clients/grant.cjs';
6
+ import { MetersClient } from './clients/meter.cjs';
7
+ import { PortalClient } from './clients/portal.cjs';
8
+ import { SubjectClient } from './clients/subject.cjs';
9
+ export { OpenMeterConfig, RequestOptions } from './clients/client.cjs';
10
+ export { Event, IngestedEvent, CloudEvent } from './clients/event.cjs';
11
+ export { Meter, MeterAggregation, WindowSize } from './clients/meter.cjs';
12
+ export declare class OpenMeter {
13
+ events: EventsClient;
14
+ meters: MetersClient;
15
+ portal: PortalClient;
16
+ subjects: SubjectClient;
17
+ features: FeatureClient;
18
+ entitlements: EntitlementClient;
19
+ grants: GrantClient;
20
+ constructor(config: OpenMeterConfig);
21
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":";;;AACA,6DAA4D;AAC5D,iDAAiD;AACjD,qDAAoD;AACpD,iDAAgD;AAChD,iDAAiD;AACjD,mDAAkD;AAClD,qDAAoD;AAIpD,+CAAwE;AAAxD,4GAAA,gBAAgB,OAAA;AAAE,sGAAA,UAAU,OAAA;AAE5C,MAAa,SAAS;IACb,MAAM,CAAc;IACpB,MAAM,CAAc;IACpB,MAAM,CAAc;IACpB,QAAQ,CAAe;IACvB,QAAQ,CAAe;IACvB,YAAY,CAAmB;IAC/B,MAAM,CAAa;IAE1B,YAAY,MAAuB;QACjC,IAAI,CAAC,MAAM,GAAG,IAAI,uBAAY,CAAC,MAAM,CAAC,CAAA;QACtC,IAAI,CAAC,MAAM,GAAG,IAAI,uBAAY,CAAC,MAAM,CAAC,CAAA;QACtC,IAAI,CAAC,MAAM,GAAG,IAAI,wBAAY,CAAC,MAAM,CAAC,CAAA;QACtC,IAAI,CAAC,QAAQ,GAAG,IAAI,0BAAa,CAAC,MAAM,CAAC,CAAA;QACzC,IAAI,CAAC,QAAQ,GAAG,IAAI,0BAAa,CAAC,MAAM,CAAC,CAAA;QACzC,IAAI,CAAC,YAAY,GAAG,IAAI,kCAAiB,CAAC,MAAM,CAAC,CAAA;QACjD,IAAI,CAAC,MAAM,GAAG,IAAI,sBAAW,CAAC,MAAM,CAAC,CAAA;IACvC,CAAC;CACF;AAlBD,8BAkBC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /**
3
+ * This file was auto-generated by openapi-typescript.
4
+ * Do not make direct changes to the file.
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=openapi.js.map