tokenmeter 0.9.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 (159) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +346 -0
  3. package/dist/__tests__/context.test.d.ts +2 -0
  4. package/dist/__tests__/context.test.d.ts.map +1 -0
  5. package/dist/__tests__/context.test.js +94 -0
  6. package/dist/__tests__/context.test.js.map +1 -0
  7. package/dist/__tests__/elevenlabs.test.d.ts +2 -0
  8. package/dist/__tests__/elevenlabs.test.d.ts.map +1 -0
  9. package/dist/__tests__/elevenlabs.test.js +108 -0
  10. package/dist/__tests__/elevenlabs.test.js.map +1 -0
  11. package/dist/__tests__/fal.test.d.ts +2 -0
  12. package/dist/__tests__/fal.test.d.ts.map +1 -0
  13. package/dist/__tests__/fal.test.js +153 -0
  14. package/dist/__tests__/fal.test.js.map +1 -0
  15. package/dist/__tests__/pricing.test.d.ts +2 -0
  16. package/dist/__tests__/pricing.test.d.ts.map +1 -0
  17. package/dist/__tests__/pricing.test.js +76 -0
  18. package/dist/__tests__/pricing.test.js.map +1 -0
  19. package/dist/__tests__/recorder.test.d.ts +2 -0
  20. package/dist/__tests__/recorder.test.d.ts.map +1 -0
  21. package/dist/__tests__/recorder.test.js +133 -0
  22. package/dist/__tests__/recorder.test.js.map +1 -0
  23. package/dist/__tests__/storage.test.d.ts +2 -0
  24. package/dist/__tests__/storage.test.d.ts.map +1 -0
  25. package/dist/__tests__/storage.test.js +106 -0
  26. package/dist/__tests__/storage.test.js.map +1 -0
  27. package/dist/client/index.d.ts +8 -0
  28. package/dist/client/index.d.ts.map +1 -0
  29. package/dist/client/index.js +7 -0
  30. package/dist/client/index.js.map +1 -0
  31. package/dist/config.d.ts +92 -0
  32. package/dist/config.d.ts.map +1 -0
  33. package/dist/config.js +166 -0
  34. package/dist/config.js.map +1 -0
  35. package/dist/context.d.ts +80 -0
  36. package/dist/context.d.ts.map +1 -0
  37. package/dist/context.js +131 -0
  38. package/dist/context.js.map +1 -0
  39. package/dist/exporter/PostgresExporter.d.ts +82 -0
  40. package/dist/exporter/PostgresExporter.d.ts.map +1 -0
  41. package/dist/exporter/PostgresExporter.js +237 -0
  42. package/dist/exporter/PostgresExporter.js.map +1 -0
  43. package/dist/exporter/index.d.ts +8 -0
  44. package/dist/exporter/index.d.ts.map +1 -0
  45. package/dist/exporter/index.js +7 -0
  46. package/dist/exporter/index.js.map +1 -0
  47. package/dist/index.d.ts +31 -0
  48. package/dist/index.d.ts.map +1 -0
  49. package/dist/index.js +37 -0
  50. package/dist/index.js.map +1 -0
  51. package/dist/instrumentation/proxy.d.ts +26 -0
  52. package/dist/instrumentation/proxy.d.ts.map +1 -0
  53. package/dist/instrumentation/proxy.js +337 -0
  54. package/dist/instrumentation/proxy.js.map +1 -0
  55. package/dist/instrumentation/strategies/index.d.ts +55 -0
  56. package/dist/instrumentation/strategies/index.d.ts.map +1 -0
  57. package/dist/instrumentation/strategies/index.js +429 -0
  58. package/dist/instrumentation/strategies/index.js.map +1 -0
  59. package/dist/integrations/express/index.d.ts +137 -0
  60. package/dist/integrations/express/index.d.ts.map +1 -0
  61. package/dist/integrations/express/index.js +186 -0
  62. package/dist/integrations/express/index.js.map +1 -0
  63. package/dist/integrations/inngest/index.d.ts +222 -0
  64. package/dist/integrations/inngest/index.d.ts.map +1 -0
  65. package/dist/integrations/inngest/index.js +223 -0
  66. package/dist/integrations/inngest/index.js.map +1 -0
  67. package/dist/integrations/langfuse/index.d.ts +170 -0
  68. package/dist/integrations/langfuse/index.d.ts.map +1 -0
  69. package/dist/integrations/langfuse/index.js +225 -0
  70. package/dist/integrations/langfuse/index.js.map +1 -0
  71. package/dist/integrations/next/index.d.ts +138 -0
  72. package/dist/integrations/next/index.d.ts.map +1 -0
  73. package/dist/integrations/next/index.js +170 -0
  74. package/dist/integrations/next/index.js.map +1 -0
  75. package/dist/integrations/nextjs/index.d.ts +198 -0
  76. package/dist/integrations/nextjs/index.d.ts.map +1 -0
  77. package/dist/integrations/nextjs/index.js +181 -0
  78. package/dist/integrations/nextjs/index.js.map +1 -0
  79. package/dist/integrations/vercel-ai/index.d.ts +288 -0
  80. package/dist/integrations/vercel-ai/index.d.ts.map +1 -0
  81. package/dist/integrations/vercel-ai/index.js +260 -0
  82. package/dist/integrations/vercel-ai/index.js.map +1 -0
  83. package/dist/logger.d.ts +58 -0
  84. package/dist/logger.d.ts.map +1 -0
  85. package/dist/logger.js +89 -0
  86. package/dist/logger.js.map +1 -0
  87. package/dist/pricing/catalog.d.ts +10 -0
  88. package/dist/pricing/catalog.d.ts.map +1 -0
  89. package/dist/pricing/catalog.js +297 -0
  90. package/dist/pricing/catalog.js.map +1 -0
  91. package/dist/pricing/index.d.ts +77 -0
  92. package/dist/pricing/index.d.ts.map +1 -0
  93. package/dist/pricing/index.js +251 -0
  94. package/dist/pricing/index.js.map +1 -0
  95. package/dist/pricing/manifest.d.ts +156 -0
  96. package/dist/pricing/manifest.d.ts.map +1 -0
  97. package/dist/pricing/manifest.js +381 -0
  98. package/dist/pricing/manifest.js.map +1 -0
  99. package/dist/pricing/manifest.json +12786 -0
  100. package/dist/pricing/providers/anthropic.json +253 -0
  101. package/dist/pricing/providers/bedrock.json +341 -0
  102. package/dist/pricing/providers/bfl.json +220 -0
  103. package/dist/pricing/providers/elevenlabs.json +142 -0
  104. package/dist/pricing/providers/fal.json +15866 -0
  105. package/dist/pricing/providers/google.json +346 -0
  106. package/dist/pricing/providers/openai.json +1035 -0
  107. package/dist/pricing/schema.d.ts +102 -0
  108. package/dist/pricing/schema.d.ts.map +1 -0
  109. package/dist/pricing/schema.js +56 -0
  110. package/dist/pricing/schema.js.map +1 -0
  111. package/dist/processor/TokenMeterProcessor.d.ts +55 -0
  112. package/dist/processor/TokenMeterProcessor.d.ts.map +1 -0
  113. package/dist/processor/TokenMeterProcessor.js +132 -0
  114. package/dist/processor/TokenMeterProcessor.js.map +1 -0
  115. package/dist/query/client.d.ts +61 -0
  116. package/dist/query/client.d.ts.map +1 -0
  117. package/dist/query/client.js +206 -0
  118. package/dist/query/client.js.map +1 -0
  119. package/dist/query/index.d.ts +8 -0
  120. package/dist/query/index.d.ts.map +1 -0
  121. package/dist/query/index.js +7 -0
  122. package/dist/query/index.js.map +1 -0
  123. package/dist/recorder.d.ts +74 -0
  124. package/dist/recorder.d.ts.map +1 -0
  125. package/dist/recorder.js +227 -0
  126. package/dist/recorder.js.map +1 -0
  127. package/dist/sdks/anthropic.d.ts +21 -0
  128. package/dist/sdks/anthropic.d.ts.map +1 -0
  129. package/dist/sdks/anthropic.js +258 -0
  130. package/dist/sdks/anthropic.js.map +1 -0
  131. package/dist/sdks/elevenlabs.d.ts +59 -0
  132. package/dist/sdks/elevenlabs.d.ts.map +1 -0
  133. package/dist/sdks/elevenlabs.js +192 -0
  134. package/dist/sdks/elevenlabs.js.map +1 -0
  135. package/dist/sdks/fal.d.ts +102 -0
  136. package/dist/sdks/fal.d.ts.map +1 -0
  137. package/dist/sdks/fal.js +306 -0
  138. package/dist/sdks/fal.js.map +1 -0
  139. package/dist/sdks/openai.d.ts +17 -0
  140. package/dist/sdks/openai.d.ts.map +1 -0
  141. package/dist/sdks/openai.js +191 -0
  142. package/dist/sdks/openai.js.map +1 -0
  143. package/dist/storage/interface.d.ts +15 -0
  144. package/dist/storage/interface.d.ts.map +1 -0
  145. package/dist/storage/interface.js +53 -0
  146. package/dist/storage/interface.js.map +1 -0
  147. package/dist/storage/prisma.d.ts +15 -0
  148. package/dist/storage/prisma.d.ts.map +1 -0
  149. package/dist/storage/prisma.js +135 -0
  150. package/dist/storage/prisma.js.map +1 -0
  151. package/dist/types.d.ts +206 -0
  152. package/dist/types.d.ts.map +1 -0
  153. package/dist/types.js +45 -0
  154. package/dist/types.js.map +1 -0
  155. package/dist/vercel-ai/index.d.ts +89 -0
  156. package/dist/vercel-ai/index.d.ts.map +1 -0
  157. package/dist/vercel-ai/index.js +298 -0
  158. package/dist/vercel-ai/index.js.map +1 -0
  159. package/package.json +119 -0
@@ -0,0 +1,220 @@
1
+ {
2
+ "$schema": "../schema.json",
3
+ "provider": "bfl",
4
+ "displayName": "Black Forest Labs",
5
+ "source": "https://api.bfl.ml/pricing",
6
+ "lastUpdated": "2025-12-22",
7
+ "currency": "USD",
8
+ "models": {
9
+ "flux-pro-1.1-ultra": {
10
+ "name": "FLUX Pro 1.1 Ultra",
11
+ "unit": "images",
12
+ "unitSize": 1,
13
+ "aliases": [
14
+ "flux/pro-1.1-ultra",
15
+ "bfl/flux-pro-1.1-ultra",
16
+ "flux-pro-1-1-ultra"
17
+ ],
18
+ "pricing": [
19
+ {
20
+ "effectiveDate": "2024-10-01",
21
+ "output": 0.06,
22
+ "notes": "Per image generated, up to 4 megapixels"
23
+ }
24
+ ]
25
+ },
26
+ "flux-pro-1.1": {
27
+ "name": "FLUX Pro 1.1",
28
+ "unit": "images",
29
+ "unitSize": 1,
30
+ "aliases": [
31
+ "flux/pro-1.1",
32
+ "bfl/flux-pro-1.1",
33
+ "flux-pro-1-1"
34
+ ],
35
+ "pricing": [
36
+ {
37
+ "effectiveDate": "2024-08-01",
38
+ "output": 0.04,
39
+ "notes": "Per image generated"
40
+ }
41
+ ]
42
+ },
43
+ "flux-pro": {
44
+ "name": "FLUX Pro",
45
+ "unit": "images",
46
+ "unitSize": 1,
47
+ "aliases": [
48
+ "flux/pro",
49
+ "bfl/flux-pro"
50
+ ],
51
+ "pricing": [
52
+ {
53
+ "effectiveDate": "2024-08-01",
54
+ "output": 0.05,
55
+ "notes": "Per image generated"
56
+ }
57
+ ]
58
+ },
59
+ "flux-dev": {
60
+ "name": "FLUX Dev",
61
+ "unit": "images",
62
+ "unitSize": 1,
63
+ "aliases": [
64
+ "flux/dev",
65
+ "bfl/flux-dev"
66
+ ],
67
+ "pricing": [
68
+ {
69
+ "effectiveDate": "2024-08-01",
70
+ "output": 0.025,
71
+ "notes": "Per image generated"
72
+ }
73
+ ]
74
+ },
75
+ "flux-schnell": {
76
+ "name": "FLUX Schnell",
77
+ "unit": "images",
78
+ "unitSize": 1,
79
+ "aliases": [
80
+ "flux/schnell",
81
+ "bfl/flux-schnell"
82
+ ],
83
+ "pricing": [
84
+ {
85
+ "effectiveDate": "2024-08-01",
86
+ "output": 0.003,
87
+ "notes": "Per image generated, fastest model"
88
+ }
89
+ ]
90
+ },
91
+ "flux-fill-pro": {
92
+ "name": "FLUX Fill Pro",
93
+ "unit": "images",
94
+ "unitSize": 1,
95
+ "aliases": [
96
+ "flux/fill-pro",
97
+ "bfl/flux-fill-pro"
98
+ ],
99
+ "pricing": [
100
+ {
101
+ "effectiveDate": "2024-10-01",
102
+ "output": 0.05,
103
+ "notes": "Inpainting/outpainting"
104
+ }
105
+ ]
106
+ },
107
+ "flux-canny-pro": {
108
+ "name": "FLUX Canny Pro",
109
+ "unit": "images",
110
+ "unitSize": 1,
111
+ "aliases": [
112
+ "flux/canny-pro",
113
+ "bfl/flux-canny-pro"
114
+ ],
115
+ "pricing": [
116
+ {
117
+ "effectiveDate": "2024-10-01",
118
+ "output": 0.05,
119
+ "notes": "ControlNet canny edge"
120
+ }
121
+ ]
122
+ },
123
+ "flux-depth-pro": {
124
+ "name": "FLUX Depth Pro",
125
+ "unit": "images",
126
+ "unitSize": 1,
127
+ "aliases": [
128
+ "flux/depth-pro",
129
+ "bfl/flux-depth-pro"
130
+ ],
131
+ "pricing": [
132
+ {
133
+ "effectiveDate": "2024-10-01",
134
+ "output": 0.05,
135
+ "notes": "ControlNet depth"
136
+ }
137
+ ]
138
+ },
139
+ "flux-redux-pro": {
140
+ "name": "FLUX Redux Pro",
141
+ "unit": "images",
142
+ "unitSize": 1,
143
+ "aliases": [
144
+ "flux/redux-pro",
145
+ "bfl/flux-redux-pro"
146
+ ],
147
+ "pricing": [
148
+ {
149
+ "effectiveDate": "2024-10-01",
150
+ "output": 0.05,
151
+ "notes": "Image variation"
152
+ }
153
+ ]
154
+ },
155
+ "flux-fill-dev": {
156
+ "name": "FLUX Fill Dev",
157
+ "unit": "images",
158
+ "unitSize": 1,
159
+ "aliases": [
160
+ "flux/fill-dev",
161
+ "bfl/flux-fill-dev"
162
+ ],
163
+ "pricing": [
164
+ {
165
+ "effectiveDate": "2024-10-01",
166
+ "output": 0.04,
167
+ "notes": "Inpainting/outpainting (dev)"
168
+ }
169
+ ]
170
+ },
171
+ "flux-canny-dev": {
172
+ "name": "FLUX Canny Dev",
173
+ "unit": "images",
174
+ "unitSize": 1,
175
+ "aliases": [
176
+ "flux/canny-dev",
177
+ "bfl/flux-canny-dev"
178
+ ],
179
+ "pricing": [
180
+ {
181
+ "effectiveDate": "2024-10-01",
182
+ "output": 0.04,
183
+ "notes": "ControlNet canny edge (dev)"
184
+ }
185
+ ]
186
+ },
187
+ "flux-depth-dev": {
188
+ "name": "FLUX Depth Dev",
189
+ "unit": "images",
190
+ "unitSize": 1,
191
+ "aliases": [
192
+ "flux/depth-dev",
193
+ "bfl/flux-depth-dev"
194
+ ],
195
+ "pricing": [
196
+ {
197
+ "effectiveDate": "2024-10-01",
198
+ "output": 0.04,
199
+ "notes": "ControlNet depth (dev)"
200
+ }
201
+ ]
202
+ },
203
+ "flux-redux-dev": {
204
+ "name": "FLUX Redux Dev",
205
+ "unit": "images",
206
+ "unitSize": 1,
207
+ "aliases": [
208
+ "flux/redux-dev",
209
+ "bfl/flux-redux-dev"
210
+ ],
211
+ "pricing": [
212
+ {
213
+ "effectiveDate": "2024-10-01",
214
+ "output": 0.04,
215
+ "notes": "Image variation (dev)"
216
+ }
217
+ ]
218
+ }
219
+ }
220
+ }
@@ -0,0 +1,142 @@
1
+ {
2
+ "$schema": "../schema.json",
3
+ "provider": "elevenlabs",
4
+ "displayName": "ElevenLabs",
5
+ "source": "https://elevenlabs.io/pricing/api",
6
+ "lastUpdated": "2025-12-22",
7
+ "currency": "USD",
8
+ "models": {
9
+ "eleven_multilingual_v2": {
10
+ "name": "Eleven Multilingual v2",
11
+ "unit": "characters",
12
+ "unitSize": 1000,
13
+ "aliases": ["elevenlabs/eleven_multilingual_v2", "multilingual_v2"],
14
+ "pricing": [
15
+ {
16
+ "effectiveDate": "2024-01-01",
17
+ "input": 0.3,
18
+ "notes": "High quality, 29 languages, 1 credit per character. ~$0.20-0.30/1K chars depending on plan"
19
+ }
20
+ ]
21
+ },
22
+ "eleven_flash_v2_5": {
23
+ "name": "Eleven Flash v2.5",
24
+ "unit": "characters",
25
+ "unitSize": 1000,
26
+ "aliases": [
27
+ "elevenlabs/eleven_flash_v2_5",
28
+ "flash_v2_5",
29
+ "eleven_flash_v2.5"
30
+ ],
31
+ "pricing": [
32
+ {
33
+ "effectiveDate": "2025-01-01",
34
+ "input": 0.15,
35
+ "notes": "Ultra-low latency, 32 languages, 0.5 credits per character"
36
+ }
37
+ ]
38
+ },
39
+ "eleven_turbo_v2_5": {
40
+ "name": "Eleven Turbo v2.5",
41
+ "unit": "characters",
42
+ "unitSize": 1000,
43
+ "aliases": [
44
+ "elevenlabs/eleven_turbo_v2_5",
45
+ "turbo_v2_5",
46
+ "eleven_turbo_v2.5"
47
+ ],
48
+ "pricing": [
49
+ {
50
+ "effectiveDate": "2024-06-01",
51
+ "input": 0.18,
52
+ "notes": "Low latency, 32 languages, optimized for real-time"
53
+ }
54
+ ]
55
+ },
56
+ "eleven_turbo_v2": {
57
+ "name": "Eleven Turbo v2",
58
+ "unit": "characters",
59
+ "unitSize": 1000,
60
+ "aliases": ["elevenlabs/eleven_turbo_v2", "turbo_v2"],
61
+ "pricing": [
62
+ {
63
+ "effectiveDate": "2024-01-01",
64
+ "input": 0.15,
65
+ "notes": "Low latency English, 0.5 credits per character"
66
+ }
67
+ ]
68
+ },
69
+ "eleven_monolingual_v1": {
70
+ "name": "Eleven Monolingual v1",
71
+ "unit": "characters",
72
+ "unitSize": 1000,
73
+ "aliases": ["elevenlabs/eleven_monolingual_v1", "monolingual_v1"],
74
+ "pricing": [
75
+ {
76
+ "effectiveDate": "2023-01-01",
77
+ "input": 0.3,
78
+ "notes": "English only, 1 credit per character"
79
+ }
80
+ ]
81
+ },
82
+ "eleven_multilingual_v1": {
83
+ "name": "Eleven Multilingual v1",
84
+ "unit": "characters",
85
+ "unitSize": 1000,
86
+ "aliases": ["elevenlabs/eleven_multilingual_v1", "multilingual_v1"],
87
+ "pricing": [
88
+ {
89
+ "effectiveDate": "2023-06-01",
90
+ "input": 0.3,
91
+ "notes": "Multi-language support, 1 credit per character"
92
+ }
93
+ ]
94
+ },
95
+ "eleven_english_sts_v2": {
96
+ "name": "Eleven English STS v2",
97
+ "unit": "characters",
98
+ "unitSize": 1000,
99
+ "aliases": ["elevenlabs/eleven_english_sts_v2", "english_sts_v2"],
100
+ "pricing": [
101
+ {
102
+ "effectiveDate": "2024-01-01",
103
+ "input": 0.3,
104
+ "notes": "Speech-to-speech, English, 1 credit per character"
105
+ }
106
+ ]
107
+ },
108
+ "eleven_multilingual_sts_v2": {
109
+ "name": "Eleven Multilingual STS v2",
110
+ "unit": "characters",
111
+ "unitSize": 1000,
112
+ "aliases": [
113
+ "elevenlabs/eleven_multilingual_sts_v2",
114
+ "multilingual_sts_v2"
115
+ ],
116
+ "pricing": [
117
+ {
118
+ "effectiveDate": "2024-01-01",
119
+ "input": 0.3,
120
+ "notes": "Speech-to-speech, multilingual, 1 credit per character"
121
+ }
122
+ ]
123
+ },
124
+ "eleven_convai_v1": {
125
+ "name": "Eleven Conversational AI v1",
126
+ "unit": "characters",
127
+ "unitSize": 1000,
128
+ "aliases": [
129
+ "elevenlabs/eleven_convai_v1",
130
+ "convai_v1",
131
+ "conversational_v1"
132
+ ],
133
+ "pricing": [
134
+ {
135
+ "effectiveDate": "2025-01-01",
136
+ "input": 0.2,
137
+ "notes": "Optimized for conversational AI applications"
138
+ }
139
+ ]
140
+ }
141
+ }
142
+ }