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

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 +17628 -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.177d1bd1.tsbuildinfo +1 -0
  60. package/dist/cjs/tsconfig.ae2c6e83.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 +17628 -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,78 @@
1
+ import type { RequestOptions } from './common.cjs';
2
+ import type { FeatureCreateInputs, operations, paths } from './schemas.cjs';
3
+ import type { Client } from 'openapi-fetch';
4
+ /**
5
+ * Features
6
+ * @description Features are the building blocks of your application. They represent the capabilities or services that your application offers.
7
+ */
8
+ export declare class Features {
9
+ private client;
10
+ constructor(client: Client<paths, `${string}/${string}`>);
11
+ /**
12
+ * Create a feature
13
+ * @param feature - The feature to create
14
+ * @param signal - An optional abort signal
15
+ * @returns The created feature
16
+ */
17
+ create(feature: FeatureCreateInputs, options?: RequestOptions): Promise<{
18
+ readonly createdAt: Date;
19
+ readonly updatedAt: Date;
20
+ readonly deletedAt?: Date;
21
+ readonly archivedAt?: Date;
22
+ key: string;
23
+ name: string;
24
+ metadata?: import("./schemas.cjs").components["schemas"]["Metadata"];
25
+ meterSlug?: string;
26
+ meterGroupByFilters?: {
27
+ [key: string]: string;
28
+ };
29
+ readonly id: string;
30
+ }>;
31
+ /**
32
+ * Get a feature by ID
33
+ * @param id - The ID of the feature
34
+ * @param signal - An optional abort signal
35
+ * @returns The feature
36
+ */
37
+ get(id: operations['getFeature']['parameters']['path']['featureId'], options?: RequestOptions): Promise<{
38
+ readonly createdAt: Date;
39
+ readonly updatedAt: Date;
40
+ readonly deletedAt?: Date;
41
+ readonly archivedAt?: Date;
42
+ key: string;
43
+ name: string;
44
+ metadata?: import("./schemas.cjs").components["schemas"]["Metadata"];
45
+ meterSlug?: string;
46
+ meterGroupByFilters?: {
47
+ [key: string]: string;
48
+ };
49
+ readonly id: string;
50
+ }>;
51
+ /**
52
+ * List features
53
+ * @param query - The query parameters
54
+ * @param signal - An optional abort signal
55
+ * @returns The features
56
+ */
57
+ list(query?: Omit<operations['listFeatures']['parameters']['query'], 'page' | 'pageSize'>, options?: RequestOptions): Promise<{
58
+ readonly createdAt: Date;
59
+ readonly updatedAt: Date;
60
+ readonly deletedAt?: Date;
61
+ readonly archivedAt?: Date;
62
+ key: string;
63
+ name: string;
64
+ metadata?: import("./schemas.cjs").components["schemas"]["Metadata"];
65
+ meterSlug?: string;
66
+ meterGroupByFilters?: {
67
+ [key: string]: string;
68
+ };
69
+ readonly id: string;
70
+ }[]>;
71
+ /**
72
+ * Delete a feature by ID
73
+ * @param id - The ID of the feature
74
+ * @param signal - An optional abort signal
75
+ * @returns The deleted feature
76
+ */
77
+ delete(id: operations['deleteFeature']['parameters']['path']['featureId'], options?: RequestOptions): Promise<undefined>;
78
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features.js","sourceRoot":"","sources":["../../../../src/client/features.ts"],"names":[],"mappings":";;;AAAA,yCAA8C;AAU9C;;;GAGG;AACH,MAAa,QAAQ;IACC;IAApB,YAAoB,MAA4C;QAA5C,WAAM,GAAN,MAAM,CAAsC;IAAG,CAAC;IAEpE;;;;;OAKG;IACI,KAAK,CAAC,MAAM,CAAC,OAA4B,EAAE,OAAwB;QACxE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE;YACtD,IAAI,EAAE,OAAO;YACb,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,IAAA,4BAAiB,EAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,GAAG,CACd,EAA+D,EAC/D,OAAwB;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,8BAA8B,EAAE;YACjE,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,SAAS,EAAE,EAAE;iBACd;aACF;YACD,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,IAAA,4BAAiB,EAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,IAAI,CACf,KAGC,EACD,OAAwB;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB,EAAE;YACrD,MAAM,EAAE;gBACN,KAAK;aACN;YACD,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,IAAA,4BAAiB,EAAC,IAAI,CAAc,CAAA;IAC7C,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,MAAM,CACjB,EAAkE,EAClE,OAAwB;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,8BAA8B,EAAE;YACpE,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,SAAS,EAAE,EAAE;iBACd;aACF;YACD,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,IAAA,4BAAiB,EAAC,IAAI,CAAC,CAAA;IAChC,CAAC;CACF;AApFD,4BAoFC"}
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
36
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.OpenMeter = void 0;
40
+ const openapi_fetch_1 = __importStar(require("openapi-fetch"));
41
+ const apps_js_1 = require("./apps.cjs");
42
+ const billing_js_1 = require("./billing.cjs");
43
+ const customers_js_1 = require("./customers.cjs");
44
+ const entitlements_js_1 = require("./entitlements.cjs");
45
+ const events_js_1 = require("./events.cjs");
46
+ const features_js_1 = require("./features.cjs");
47
+ const meters_js_1 = require("./meters.cjs");
48
+ const notifications_js_1 = require("./notifications.cjs");
49
+ const plans_js_1 = require("./plans.cjs");
50
+ const portal_js_1 = require("./portal.cjs");
51
+ const subjects_js_1 = require("./subjects.cjs");
52
+ const subscriptions_js_1 = require("./subscriptions.cjs");
53
+ const utils_js_1 = require("./utils.cjs");
54
+ __exportStar(require("./schemas.cjs"), exports);
55
+ __exportStar(require("./common.cjs"), exports);
56
+ /**
57
+ * OpenMeter Client
58
+ */
59
+ class OpenMeter {
60
+ config;
61
+ client;
62
+ apps;
63
+ billing;
64
+ customers;
65
+ entitlements;
66
+ events;
67
+ features;
68
+ meters;
69
+ notifications;
70
+ plans;
71
+ portal;
72
+ subjects;
73
+ subscriptions;
74
+ constructor(config) {
75
+ this.config = config;
76
+ this.client = (0, openapi_fetch_1.default)({
77
+ ...config,
78
+ headers: {
79
+ ...config.headers,
80
+ Authorization: config.apiKey ? `Bearer ${config.apiKey}` : undefined,
81
+ },
82
+ querySerializer: (q) => (0, openapi_fetch_1.createQuerySerializer)({
83
+ array: {
84
+ explode: true,
85
+ style: 'form',
86
+ },
87
+ object: {
88
+ explode: true,
89
+ style: 'deepObject',
90
+ },
91
+ })((0, utils_js_1.encodeDates)(q)),
92
+ });
93
+ this.apps = new apps_js_1.Apps(this.client);
94
+ this.billing = new billing_js_1.Billing(this.client);
95
+ this.customers = new customers_js_1.Customers(this.client);
96
+ this.entitlements = new entitlements_js_1.Entitlements(this.client);
97
+ this.events = new events_js_1.Events(this.client);
98
+ this.features = new features_js_1.Features(this.client);
99
+ this.meters = new meters_js_1.Meters(this.client);
100
+ this.notifications = new notifications_js_1.Notifications(this.client);
101
+ this.plans = new plans_js_1.Plans(this.client);
102
+ this.portal = new portal_js_1.Portal(this.client);
103
+ this.subjects = new subjects_js_1.Subjects(this.client);
104
+ this.subscriptions = new subscriptions_js_1.Subscriptions(this.client);
105
+ }
106
+ }
107
+ exports.OpenMeter = OpenMeter;
108
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,45 @@
1
+ import { type Client, type ClientOptions } from 'openapi-fetch';
2
+ import { Apps } from './apps.cjs';
3
+ import { Billing } from './billing.cjs';
4
+ import { Customers } from './customers.cjs';
5
+ import { Entitlements } from './entitlements.cjs';
6
+ import { Events } from './events.cjs';
7
+ import { Features } from './features.cjs';
8
+ import { Meters } from './meters.cjs';
9
+ import { Notifications } from './notifications.cjs';
10
+ import { Plans } from './plans.cjs';
11
+ import { Portal } from './portal.cjs';
12
+ import { Subjects } from './subjects.cjs';
13
+ import { Subscriptions } from './subscriptions.cjs';
14
+ import type { paths } from './schemas.cjs';
15
+ export * from './schemas.cjs';
16
+ export * from './common.cjs';
17
+ /**
18
+ * OpenMeter Config
19
+ */
20
+ export type Config = Pick<ClientOptions, 'baseUrl' | 'headers' | 'fetch' | 'Request' | 'requestInitExt'> & ({
21
+ apiKey?: string;
22
+ } | {
23
+ baseUrl: 'https://openmeter.cloud';
24
+ apiKey: string;
25
+ });
26
+ /**
27
+ * OpenMeter Client
28
+ */
29
+ export declare class OpenMeter {
30
+ config: Config;
31
+ client: Client<paths, `${string}/${string}`>;
32
+ apps: Apps;
33
+ billing: Billing;
34
+ customers: Customers;
35
+ entitlements: Entitlements;
36
+ events: Events;
37
+ features: Features;
38
+ meters: Meters;
39
+ notifications: Notifications;
40
+ plans: Plans;
41
+ portal: Portal;
42
+ subjects: Subjects;
43
+ subscriptions: Subscriptions;
44
+ constructor(config: Config);
45
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/client/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+DAIsB;AACtB,uCAAgC;AAChC,6CAAsC;AACtC,iDAA0C;AAC1C,uDAAgD;AAChD,2CAAoC;AACpC,+CAAwC;AACxC,2CAAoC;AACpC,yDAAkD;AAClD,yCAAkC;AAClC,2CAAoC;AACpC,+CAAwC;AACxC,yDAAkD;AAClD,yCAAwC;AAGxC,+CAA4B;AAC5B,8CAA2B;AAmB3B;;GAEG;AACH,MAAa,SAAS;IAgBD;IAfZ,MAAM,CAAsC;IAE5C,IAAI,CAAM;IACV,OAAO,CAAS;IAChB,SAAS,CAAW;IACpB,YAAY,CAAc;IAC1B,MAAM,CAAQ;IACd,QAAQ,CAAU;IAClB,MAAM,CAAQ;IACd,aAAa,CAAe;IAC5B,KAAK,CAAO;IACZ,MAAM,CAAQ;IACd,QAAQ,CAAU;IAClB,aAAa,CAAe;IAEnC,YAAmB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QAC/B,IAAI,CAAC,MAAM,GAAG,IAAA,uBAAY,EAAQ;YAChC,GAAG,MAAM;YACT,OAAO,EAAE;gBACP,GAAG,MAAM,CAAC,OAAO;gBACjB,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS;aACrE;YACD,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE,CACrB,IAAA,qCAAqB,EAAC;gBACpB,KAAK,EAAE;oBACL,OAAO,EAAE,IAAI;oBACb,KAAK,EAAE,MAAM;iBACd;gBACD,MAAM,EAAE;oBACN,OAAO,EAAE,IAAI;oBACb,KAAK,EAAE,YAAY;iBACpB;aACF,CAAC,CAAC,IAAA,sBAAW,EAAC,CAAC,CAAC,CAAC;SACrB,CAAC,CAAA;QAEF,IAAI,CAAC,IAAI,GAAG,IAAI,cAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACjC,IAAI,CAAC,OAAO,GAAG,IAAI,oBAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACvC,IAAI,CAAC,SAAS,GAAG,IAAI,wBAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC3C,IAAI,CAAC,YAAY,GAAG,IAAI,8BAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACjD,IAAI,CAAC,MAAM,GAAG,IAAI,kBAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACrC,IAAI,CAAC,QAAQ,GAAG,IAAI,sBAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACzC,IAAI,CAAC,MAAM,GAAG,IAAI,kBAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACrC,IAAI,CAAC,aAAa,GAAG,IAAI,gCAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACnD,IAAI,CAAC,KAAK,GAAG,IAAI,gBAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACnC,IAAI,CAAC,MAAM,GAAG,IAAI,kBAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACrC,IAAI,CAAC,QAAQ,GAAG,IAAI,sBAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACzC,IAAI,CAAC,aAAa,GAAG,IAAI,gCAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACrD,CAAC;CACF;AAjDD,8BAiDC"}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Meters = void 0;
4
+ const utils_js_1 = require("./utils.cjs");
5
+ /**
6
+ * Meters
7
+ * @description Meters are used to track and manage usage of your application.
8
+ */
9
+ class Meters {
10
+ client;
11
+ constructor(client) {
12
+ this.client = client;
13
+ }
14
+ /**
15
+ * Create a meter
16
+ * @param meter - The meter to create
17
+ * @param signal - An optional abort signal
18
+ * @returns The created meter
19
+ */
20
+ async create(meter, options) {
21
+ const resp = await this.client.POST('/api/v1/meters', {
22
+ body: meter,
23
+ ...options,
24
+ });
25
+ return (0, utils_js_1.transformResponse)(resp);
26
+ }
27
+ /**
28
+ * Get a meter by ID or slug
29
+ * @param idOrSlug - The ID or slug of the meter
30
+ * @param signal - An optional abort signal
31
+ * @returns The meter
32
+ */
33
+ async get(idOrSlug, options) {
34
+ const resp = await this.client.GET('/api/v1/meters/{meterIdOrSlug}', {
35
+ params: {
36
+ path: {
37
+ meterIdOrSlug: idOrSlug,
38
+ },
39
+ },
40
+ ...options,
41
+ });
42
+ return (0, utils_js_1.transformResponse)(resp);
43
+ }
44
+ /**
45
+ * List meters
46
+ * @param signal - An optional abort signal
47
+ * @returns The meters
48
+ */
49
+ async list(options) {
50
+ const resp = await this.client.GET('/api/v1/meters', {
51
+ ...options,
52
+ });
53
+ return (0, utils_js_1.transformResponse)(resp);
54
+ }
55
+ /**
56
+ * Query usage data for a meter by ID or slug
57
+ * @param idOrSlug - The ID or slug of the meter
58
+ * @param query - The query parameters
59
+ * @param signal - An optional abort signal
60
+ * @returns The meter data
61
+ */
62
+ async query(idOrSlug, query, options) {
63
+ const resp = await this.client.GET('/api/v1/meters/{meterIdOrSlug}/query', {
64
+ params: {
65
+ path: {
66
+ meterIdOrSlug: idOrSlug,
67
+ },
68
+ query,
69
+ },
70
+ ...options,
71
+ });
72
+ return (0, utils_js_1.transformResponse)(resp);
73
+ }
74
+ /**
75
+ * Delete a meter by ID or slug
76
+ * @param idOrSlug - The ID or slug of the meter
77
+ * @param signal - An optional abort signal
78
+ * @returns The deleted meter
79
+ */
80
+ async delete(idOrSlug, options) {
81
+ const resp = await this.client.DELETE('/api/v1/meters/{meterIdOrSlug}', {
82
+ params: {
83
+ path: {
84
+ meterIdOrSlug: idOrSlug,
85
+ },
86
+ },
87
+ ...options,
88
+ });
89
+ return (0, utils_js_1.transformResponse)(resp);
90
+ }
91
+ }
92
+ exports.Meters = Meters;
93
+ //# sourceMappingURL=meters.js.map
@@ -0,0 +1,160 @@
1
+ import type { RequestOptions } from './common.cjs';
2
+ import type { MeterCreate, operations, paths } from './schemas.cjs';
3
+ import type { Client } from 'openapi-fetch';
4
+ /**
5
+ * Meters
6
+ * @description Meters are used to track and manage usage of your application.
7
+ */
8
+ export declare class Meters {
9
+ private client;
10
+ constructor(client: Client<paths, `${string}/${string}`>);
11
+ /**
12
+ * Create a meter
13
+ * @param meter - The meter to create
14
+ * @param signal - An optional abort signal
15
+ * @returns The created meter
16
+ */
17
+ create(meter: MeterCreate, options?: RequestOptions): Promise<{
18
+ readonly id: string;
19
+ description?: string;
20
+ metadata?: import("./schemas.cjs").components["schemas"]["Metadata"] | null;
21
+ readonly createdAt: Date;
22
+ readonly updatedAt: Date;
23
+ readonly deletedAt?: Date;
24
+ name?: string;
25
+ slug: string;
26
+ aggregation: import("./schemas.cjs").components["schemas"]["MeterAggregation"];
27
+ eventType: string;
28
+ eventFrom?: Date;
29
+ valueProperty?: string;
30
+ groupBy?: {
31
+ [key: string]: string;
32
+ };
33
+ }>;
34
+ /**
35
+ * Get a meter by ID or slug
36
+ * @param idOrSlug - The ID or slug of the meter
37
+ * @param signal - An optional abort signal
38
+ * @returns The meter
39
+ */
40
+ get(idOrSlug: operations['getMeter']['parameters']['path']['meterIdOrSlug'], options?: RequestOptions): Promise<{
41
+ readonly id: string;
42
+ description?: string;
43
+ metadata?: import("./schemas.cjs").components["schemas"]["Metadata"] | null;
44
+ readonly createdAt: Date;
45
+ readonly updatedAt: Date;
46
+ readonly deletedAt?: Date;
47
+ name?: string;
48
+ slug: string;
49
+ aggregation: import("./schemas.cjs").components["schemas"]["MeterAggregation"];
50
+ eventType: string;
51
+ eventFrom?: Date;
52
+ valueProperty?: string;
53
+ groupBy?: {
54
+ [key: string]: string;
55
+ };
56
+ }>;
57
+ /**
58
+ * List meters
59
+ * @param signal - An optional abort signal
60
+ * @returns The meters
61
+ */
62
+ list(options?: RequestOptions): Promise<{
63
+ readonly id: string;
64
+ description?: string;
65
+ metadata?: import("./schemas.cjs").components["schemas"]["Metadata"] | null;
66
+ readonly createdAt: Date;
67
+ readonly updatedAt: Date;
68
+ readonly deletedAt?: Date;
69
+ name?: string;
70
+ slug: string;
71
+ aggregation: import("./schemas.cjs").components["schemas"]["MeterAggregation"];
72
+ eventType: string;
73
+ eventFrom?: Date;
74
+ valueProperty?: string;
75
+ groupBy?: {
76
+ [key: string]: string;
77
+ };
78
+ }[]>;
79
+ /**
80
+ * Query usage data for a meter by ID or slug
81
+ * @param idOrSlug - The ID or slug of the meter
82
+ * @param query - The query parameters
83
+ * @param signal - An optional abort signal
84
+ * @returns The meter data
85
+ */
86
+ query(idOrSlug: operations['queryMeter']['parameters']['path']['meterIdOrSlug'], query?: operations['queryMeter']['parameters']['query'], options?: RequestOptions): Promise<import("openapi-typescript-helpers").SuccessResponse<{
87
+ 200: {
88
+ headers: {
89
+ [name: string]: unknown;
90
+ };
91
+ content: {
92
+ "application/json": import("./schemas.cjs").components["schemas"]["MeterQueryResult"];
93
+ "text/csv": string;
94
+ };
95
+ };
96
+ 400: {
97
+ headers: {
98
+ [name: string]: unknown;
99
+ };
100
+ content: {
101
+ "application/problem+json": import("./schemas.cjs").components["schemas"]["BadRequestProblemResponse"];
102
+ };
103
+ };
104
+ 401: {
105
+ headers: {
106
+ [name: string]: unknown;
107
+ };
108
+ content: {
109
+ "application/problem+json": import("./schemas.cjs").components["schemas"]["UnauthorizedProblemResponse"];
110
+ };
111
+ };
112
+ 403: {
113
+ headers: {
114
+ [name: string]: unknown;
115
+ };
116
+ content: {
117
+ "application/problem+json": import("./schemas.cjs").components["schemas"]["ForbiddenProblemResponse"];
118
+ };
119
+ };
120
+ 404: {
121
+ headers: {
122
+ [name: string]: unknown;
123
+ };
124
+ content: {
125
+ "application/problem+json": import("./schemas.cjs").components["schemas"]["NotFoundProblemResponse"];
126
+ };
127
+ };
128
+ 500: {
129
+ headers: {
130
+ [name: string]: unknown;
131
+ };
132
+ content: {
133
+ "application/problem+json": import("./schemas.cjs").components["schemas"]["InternalServerErrorProblemResponse"];
134
+ };
135
+ };
136
+ 503: {
137
+ headers: {
138
+ [name: string]: unknown;
139
+ };
140
+ content: {
141
+ "application/problem+json": import("./schemas.cjs").components["schemas"]["ServiceUnavailableProblemResponse"];
142
+ };
143
+ };
144
+ default: {
145
+ headers: {
146
+ [name: string]: unknown;
147
+ };
148
+ content: {
149
+ "application/problem+json": import("./schemas.cjs").components["schemas"]["UnexpectedProblemResponse"];
150
+ };
151
+ };
152
+ }, `${string}/${string}`>>;
153
+ /**
154
+ * Delete a meter by ID or slug
155
+ * @param idOrSlug - The ID or slug of the meter
156
+ * @param signal - An optional abort signal
157
+ * @returns The deleted meter
158
+ */
159
+ delete(idOrSlug: operations['deleteMeter']['parameters']['path']['meterIdOrSlug'], options?: RequestOptions): Promise<undefined>;
160
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meters.js","sourceRoot":"","sources":["../../../../src/client/meters.ts"],"names":[],"mappings":";;;AAAA,yCAA8C;AAK9C;;;GAGG;AACH,MAAa,MAAM;IACG;IAApB,YAAoB,MAA4C;QAA5C,WAAM,GAAN,MAAM,CAAsC;IAAG,CAAC;IAEpE;;;;;OAKG;IACI,KAAK,CAAC,MAAM,CAAC,KAAkB,EAAE,OAAwB;QAC9D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE;YACpD,IAAI,EAAE,KAAK;YACX,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,IAAA,4BAAiB,EAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,GAAG,CACd,QAAuE,EACvE,OAAwB;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,gCAAgC,EAAE;YACnE,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,aAAa,EAAE,QAAQ;iBACxB;aACF;YACD,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,IAAA,4BAAiB,EAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,IAAI,CAAC,OAAwB;QACxC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE;YACnD,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,IAAA,4BAAiB,EAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,KAAK,CAChB,QAAyE,EACzE,KAAuD,EACvD,OAAwB;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,sCAAsC,EAAE;YACzE,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,aAAa,EAAE,QAAQ;iBACxB;gBACD,KAAK;aACN;YACD,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,IAAA,4BAAiB,EAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,MAAM,CACjB,QAA0E,EAC1E,OAAwB;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gCAAgC,EAAE;YACtE,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,aAAa,EAAE,QAAQ;iBACxB;aACF;YACD,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,OAAO,IAAA,4BAAiB,EAAC,IAAI,CAAC,CAAA;IAChC,CAAC;CACF;AAnGD,wBAmGC"}