@contractspec/lib.metering 1.57.0 → 1.59.0

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 (65) hide show
  1. package/dist/aggregation/index.d.ts +119 -122
  2. package/dist/aggregation/index.d.ts.map +1 -1
  3. package/dist/aggregation/index.js +257 -265
  4. package/dist/analytics/posthog-metering-reader.d.ts +32 -36
  5. package/dist/analytics/posthog-metering-reader.d.ts.map +1 -1
  6. package/dist/analytics/posthog-metering-reader.js +239 -179
  7. package/dist/analytics/posthog-metering.d.ts +30 -34
  8. package/dist/analytics/posthog-metering.d.ts.map +1 -1
  9. package/dist/analytics/posthog-metering.js +45 -45
  10. package/dist/browser/aggregation/index.js +265 -0
  11. package/dist/browser/analytics/posthog-metering-reader.js +266 -0
  12. package/dist/browser/analytics/posthog-metering.js +45 -0
  13. package/dist/browser/contracts/index.js +617 -0
  14. package/dist/browser/docs/index.js +62 -0
  15. package/dist/browser/docs/metering.docblock.js +62 -0
  16. package/dist/browser/entities/index.js +350 -0
  17. package/dist/browser/events.js +228 -0
  18. package/dist/browser/index.js +1879 -0
  19. package/dist/browser/metering.capability.js +28 -0
  20. package/dist/browser/metering.feature.js +52 -0
  21. package/dist/contracts/index.d.ts +1076 -1082
  22. package/dist/contracts/index.d.ts.map +1 -1
  23. package/dist/contracts/index.js +616 -1030
  24. package/dist/docs/index.d.ts +2 -1
  25. package/dist/docs/index.d.ts.map +1 -0
  26. package/dist/docs/index.js +63 -1
  27. package/dist/docs/metering.docblock.d.ts +2 -1
  28. package/dist/docs/metering.docblock.d.ts.map +1 -0
  29. package/dist/docs/metering.docblock.js +17 -22
  30. package/dist/entities/index.d.ts +186 -191
  31. package/dist/entities/index.d.ts.map +1 -1
  32. package/dist/entities/index.js +340 -407
  33. package/dist/events.d.ts +411 -417
  34. package/dist/events.d.ts.map +1 -1
  35. package/dist/events.js +226 -414
  36. package/dist/index.d.ts +9 -8
  37. package/dist/index.d.ts.map +1 -0
  38. package/dist/index.js +1880 -10
  39. package/dist/metering.capability.d.ts +2 -7
  40. package/dist/metering.capability.d.ts.map +1 -1
  41. package/dist/metering.capability.js +29 -33
  42. package/dist/metering.feature.d.ts +1 -6
  43. package/dist/metering.feature.d.ts.map +1 -1
  44. package/dist/metering.feature.js +51 -132
  45. package/dist/node/aggregation/index.js +265 -0
  46. package/dist/node/analytics/posthog-metering-reader.js +266 -0
  47. package/dist/node/analytics/posthog-metering.js +45 -0
  48. package/dist/node/contracts/index.js +617 -0
  49. package/dist/node/docs/index.js +62 -0
  50. package/dist/node/docs/metering.docblock.js +62 -0
  51. package/dist/node/entities/index.js +350 -0
  52. package/dist/node/events.js +228 -0
  53. package/dist/node/index.js +1879 -0
  54. package/dist/node/metering.capability.js +28 -0
  55. package/dist/node/metering.feature.js +52 -0
  56. package/package.json +133 -34
  57. package/dist/aggregation/index.js.map +0 -1
  58. package/dist/analytics/posthog-metering-reader.js.map +0 -1
  59. package/dist/analytics/posthog-metering.js.map +0 -1
  60. package/dist/contracts/index.js.map +0 -1
  61. package/dist/docs/metering.docblock.js.map +0 -1
  62. package/dist/entities/index.js.map +0 -1
  63. package/dist/events.js.map +0 -1
  64. package/dist/metering.capability.js.map +0 -1
  65. package/dist/metering.feature.js.map +0 -1
@@ -0,0 +1,28 @@
1
+ // src/metering.capability.ts
2
+ import { defineCapability, StabilityEnum } from "@contractspec/lib.contracts";
3
+ var MeteringCapability = defineCapability({
4
+ meta: {
5
+ key: "metering",
6
+ version: "1.0.0",
7
+ kind: "api",
8
+ stability: StabilityEnum.Experimental,
9
+ description: "Usage metering and tracking",
10
+ owners: ["@platform.finance"],
11
+ tags: ["metering", "usage", "billing"]
12
+ }
13
+ });
14
+ var ThresholdsCapability = defineCapability({
15
+ meta: {
16
+ key: "thresholds",
17
+ version: "1.0.0",
18
+ kind: "api",
19
+ stability: StabilityEnum.Experimental,
20
+ description: "Usage threshold alerts and limits",
21
+ owners: ["@platform.finance"],
22
+ tags: ["thresholds", "limits", "metering"]
23
+ }
24
+ });
25
+ export {
26
+ ThresholdsCapability,
27
+ MeteringCapability
28
+ };
@@ -0,0 +1,52 @@
1
+ // src/metering.feature.ts
2
+ import { defineFeature } from "@contractspec/lib.contracts";
3
+ var MeteringFeature = defineFeature({
4
+ meta: {
5
+ key: "metrics",
6
+ version: "1.0.0",
7
+ title: "Usage Metering",
8
+ description: "Usage metering, metric definitions, and threshold alerting",
9
+ domain: "platform",
10
+ owners: ["@platform.metering"],
11
+ tags: ["metering", "usage", "billing", "thresholds"],
12
+ stability: "stable"
13
+ },
14
+ operations: [
15
+ { key: "metric.define", version: "1.0.0" },
16
+ { key: "metric.update", version: "1.0.0" },
17
+ { key: "metric.delete", version: "1.0.0" },
18
+ { key: "metric.get", version: "1.0.0" },
19
+ { key: "metric.list", version: "1.0.0" },
20
+ { key: "usage.record", version: "1.0.0" },
21
+ { key: "usage.recordBatch", version: "1.0.0" },
22
+ { key: "usage.get", version: "1.0.0" },
23
+ { key: "usage.getSummary", version: "1.0.0" },
24
+ { key: "threshold.create", version: "1.0.0" },
25
+ { key: "threshold.update", version: "1.0.0" },
26
+ { key: "threshold.delete", version: "1.0.0" },
27
+ { key: "threshold.list", version: "1.0.0" }
28
+ ],
29
+ events: [
30
+ { key: "metric.defined", version: "1.0.0" },
31
+ { key: "metric.updated", version: "1.0.0" },
32
+ { key: "usage.recorded", version: "1.0.0" },
33
+ { key: "usage.batch_recorded", version: "1.0.0" },
34
+ { key: "usage.aggregated", version: "1.0.0" },
35
+ { key: "threshold.created", version: "1.0.0" },
36
+ { key: "threshold.exceeded", version: "1.0.0" },
37
+ { key: "threshold.approaching", version: "1.0.0" }
38
+ ],
39
+ presentations: [],
40
+ opToPresentation: [],
41
+ presentationsTargets: [],
42
+ capabilities: {
43
+ provides: [
44
+ { key: "metering", version: "1.0.0" },
45
+ { key: "thresholds", version: "1.0.0" }
46
+ ],
47
+ requires: []
48
+ }
49
+ });
50
+ export {
51
+ MeteringFeature
52
+ };