weflayr 0.24.0 → 0.26.1

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 (235) hide show
  1. package/README.md +2 -2
  2. package/dist/package.json +51 -0
  3. package/dist/{api → src/api}/generated/facade.gen.d.ts +86 -12
  4. package/dist/{api → src/api}/generated/facade.gen.js +4 -2
  5. package/dist/src/api/generated/index.d.ts +2 -0
  6. package/dist/{api → src/api}/generated/index.js +3 -1
  7. package/dist/{api → src/api}/generated/sdk.gen.d.ts +11 -3
  8. package/dist/{api → src/api}/generated/sdk.gen.js +34 -4
  9. package/{src/api/generated/types.gen.ts → dist/src/api/generated/types.gen.d.ts} +436 -153
  10. package/dist/{api → src/api}/makeEndpoint.js +1 -3
  11. package/dist/src/auto-instrument.d.ts +42 -0
  12. package/dist/src/auto-instrument.js +156 -0
  13. package/dist/src/index.d.ts +9 -0
  14. package/dist/src/index.js +49 -0
  15. package/dist/src/instrumentation/anthropic/get_cache_and_reasoning_telemetry.d.ts +20 -0
  16. package/dist/src/instrumentation/anthropic/get_cache_and_reasoning_telemetry.js +114 -0
  17. package/dist/src/instrumentation/anthropic/get_cache_config_telemetry.d.ts +28 -0
  18. package/dist/src/instrumentation/anthropic/get_cache_config_telemetry.js +92 -0
  19. package/dist/src/instrumentation/anthropic/get_streaming_accumulation_telemetry.d.ts +25 -0
  20. package/dist/src/instrumentation/anthropic/get_streaming_accumulation_telemetry.js +141 -0
  21. package/dist/src/instrumentation/anthropic/get_structured_output_schema_telemetry.d.ts +9 -0
  22. package/dist/src/instrumentation/anthropic/get_structured_output_schema_telemetry.js +17 -0
  23. package/dist/src/instrumentation/anthropic/get_tool_definitions_telemetry.d.ts +15 -0
  24. package/dist/src/instrumentation/anthropic/get_tool_definitions_telemetry.js +50 -0
  25. package/dist/src/instrumentation/anthropic/set_telemetry_attributes.d.ts +15 -0
  26. package/dist/src/instrumentation/anthropic/set_telemetry_attributes.js +39 -0
  27. package/dist/src/instrumentation/bedrock/get_cache_config_telemetry.d.ts +22 -0
  28. package/dist/src/instrumentation/bedrock/get_cache_config_telemetry.js +97 -0
  29. package/dist/src/instrumentation/bedrock/get_cache_telemetry.d.ts +22 -0
  30. package/dist/src/instrumentation/bedrock/get_cache_telemetry.js +102 -0
  31. package/dist/src/instrumentation/bedrock/get_input_message_content_telemetry.d.ts +15 -0
  32. package/dist/src/instrumentation/bedrock/get_input_message_content_telemetry.js +91 -0
  33. package/dist/src/instrumentation/bedrock/get_model_id_telemetry.d.ts +21 -0
  34. package/dist/src/instrumentation/bedrock/get_model_id_telemetry.js +54 -0
  35. package/dist/src/instrumentation/bedrock/get_reasoning_output_telemetry.d.ts +19 -0
  36. package/dist/src/instrumentation/bedrock/get_reasoning_output_telemetry.js +81 -0
  37. package/dist/src/instrumentation/bedrock/get_streaming_output_message_telemetry.d.ts +27 -0
  38. package/dist/src/instrumentation/bedrock/get_streaming_output_message_telemetry.js +126 -0
  39. package/dist/src/instrumentation/bedrock/get_tool_call_output_telemetry.d.ts +17 -0
  40. package/dist/src/instrumentation/bedrock/get_tool_call_output_telemetry.js +85 -0
  41. package/dist/src/instrumentation/bedrock/get_tool_definitions_telemetry.d.ts +15 -0
  42. package/dist/src/instrumentation/bedrock/get_tool_definitions_telemetry.js +68 -0
  43. package/dist/src/instrumentation/bedrock/set_telemetry_attributes.d.ts +18 -0
  44. package/dist/src/instrumentation/bedrock/set_telemetry_attributes.js +47 -0
  45. package/dist/src/instrumentation/cohere/get_chat_telemetry.d.ts +23 -0
  46. package/dist/src/instrumentation/cohere/get_chat_telemetry.js +77 -0
  47. package/dist/src/instrumentation/cohere/get_embeddings_telemetry.d.ts +18 -0
  48. package/dist/src/instrumentation/cohere/get_embeddings_telemetry.js +88 -0
  49. package/dist/src/instrumentation/cohere/get_structured_output_schema_telemetry.d.ts +12 -0
  50. package/dist/src/instrumentation/cohere/get_structured_output_schema_telemetry.js +18 -0
  51. package/dist/src/instrumentation/cohere/get_tool_call_output_telemetry.d.ts +31 -0
  52. package/dist/src/instrumentation/cohere/get_tool_call_output_telemetry.js +106 -0
  53. package/dist/src/instrumentation/cohere/get_tool_definitions_telemetry.d.ts +27 -0
  54. package/dist/src/instrumentation/cohere/get_tool_definitions_telemetry.js +75 -0
  55. package/dist/src/instrumentation/cohere/set_telemetry_attributes.d.ts +17 -0
  56. package/dist/src/instrumentation/cohere/set_telemetry_attributes.js +44 -0
  57. package/dist/src/instrumentation/elevenlabs/full_instrumentation.d.ts +28 -0
  58. package/dist/src/instrumentation/elevenlabs/full_instrumentation.js +209 -0
  59. package/dist/src/instrumentation/google/get_audio_telemetry.d.ts +9 -0
  60. package/dist/src/instrumentation/google/get_audio_telemetry.js +28 -0
  61. package/dist/src/instrumentation/google/get_cache_operations_telemetry.d.ts +23 -0
  62. package/dist/src/instrumentation/google/get_cache_operations_telemetry.js +154 -0
  63. package/dist/src/instrumentation/google/get_cache_telemetry.d.ts +16 -0
  64. package/{src → dist/src}/instrumentation/google/get_cache_telemetry.js +18 -19
  65. package/dist/src/instrumentation/google/get_embeddings_telemetry.d.ts +12 -0
  66. package/dist/src/instrumentation/google/get_embeddings_telemetry.js +85 -0
  67. package/dist/src/instrumentation/google/get_provider_name.d.ts +11 -0
  68. package/{src → dist/src}/instrumentation/google/get_provider_name.js +11 -12
  69. package/{src/instrumentation/google/get_reasoning_telemetry.js → dist/src/instrumentation/google/get_reasoning_telemetry.d.ts} +1 -11
  70. package/dist/src/instrumentation/google/get_reasoning_telemetry.js +21 -0
  71. package/dist/src/instrumentation/google/get_structured_output_schema_telemetry.d.ts +12 -0
  72. package/dist/src/instrumentation/google/get_structured_output_schema_telemetry.js +19 -0
  73. package/dist/src/instrumentation/google/set_telemetry_attributes.d.ts +18 -0
  74. package/dist/src/instrumentation/google/set_telemetry_attributes.js +98 -0
  75. package/dist/src/instrumentation/openai/get_audio_telemetry.d.ts +25 -0
  76. package/dist/src/instrumentation/openai/get_audio_telemetry.js +123 -0
  77. package/dist/src/instrumentation/openai/get_bedrock_mantle_telemetry.d.ts +35 -0
  78. package/dist/src/instrumentation/openai/get_bedrock_mantle_telemetry.js +148 -0
  79. package/dist/src/instrumentation/openai/get_cache_and_reasoning_telemetry.d.ts +27 -0
  80. package/dist/src/instrumentation/openai/get_cache_and_reasoning_telemetry.js +72 -0
  81. package/dist/src/instrumentation/openai/get_cache_config_telemetry.d.ts +28 -0
  82. package/dist/src/instrumentation/openai/get_cache_config_telemetry.js +91 -0
  83. package/dist/src/instrumentation/openai/get_embeddings_telemetry.d.ts +18 -0
  84. package/dist/src/instrumentation/openai/get_embeddings_telemetry.js +86 -0
  85. package/dist/src/instrumentation/openai/get_streaming_usage.d.ts +21 -0
  86. package/dist/src/instrumentation/openai/get_streaming_usage.js +74 -0
  87. package/dist/src/instrumentation/openai/get_structured_output_schema_telemetry.d.ts +12 -0
  88. package/dist/src/instrumentation/openai/get_structured_output_schema_telemetry.js +20 -0
  89. package/dist/src/instrumentation/openai/set_telemetry_attributes.d.ts +17 -0
  90. package/dist/src/instrumentation/openai/set_telemetry_attributes.js +47 -0
  91. package/dist/src/instrumentation/shared/get_structured_output_schema_telemetry.d.ts +35 -0
  92. package/dist/src/instrumentation/shared/get_structured_output_schema_telemetry.js +76 -0
  93. package/dist/src/instrumentation/vercel/full_instrumentation.d.ts +3 -0
  94. package/dist/src/instrumentation/vercel/full_instrumentation.js +54 -0
  95. package/dist/src/instrumentation/vercel/get_cache_creation_telemetry.d.ts +22 -0
  96. package/dist/src/instrumentation/vercel/get_cache_creation_telemetry.js +66 -0
  97. package/dist/src/instrumentation/vercel/get_structured_output_schema_telemetry.d.ts +24 -0
  98. package/dist/src/instrumentation/vercel/get_structured_output_schema_telemetry.js +84 -0
  99. package/dist/src/logger.d.ts +1 -0
  100. package/dist/src/logger.js +6 -0
  101. package/dist/src/otel/exporter.d.ts +19 -0
  102. package/dist/src/otel/exporter.js +94 -0
  103. package/dist/src/otel/propagation.d.ts +46 -0
  104. package/dist/src/otel/propagation.js +110 -0
  105. package/dist/src/otel/span-filter.d.ts +3 -0
  106. package/dist/src/otel/span-filter.js +61 -0
  107. package/dist/src/otel/span-processor.d.ts +55 -0
  108. package/dist/src/otel/span-processor.js +169 -0
  109. package/dist/src/otel/vercel-ai-sdk-span-filter.d.ts +12 -0
  110. package/dist/src/otel/vercel-ai-sdk-span-filter.js +88 -0
  111. package/dist/src/setup.d.ts +50 -0
  112. package/dist/src/setup.js +155 -0
  113. package/package.json +12 -5
  114. package/.prettierignore +0 -2
  115. package/.prettierrc.json +0 -7
  116. package/LICENSE-MIT +0 -21
  117. package/NOTICE +0 -12
  118. package/dist/api/generated/index.d.ts +0 -2
  119. package/dist/api/generated/types.gen.d.ts +0 -1005
  120. package/eslint.config.mjs +0 -36
  121. package/index.d.ts +0 -170
  122. package/openapi-ts.config.mjs +0 -9
  123. package/scripts/generate_facade.mjs +0 -86
  124. package/src/api/caseConversion.ts +0 -58
  125. package/src/api/generated/client/client.gen.ts +0 -277
  126. package/src/api/generated/client/index.ts +0 -27
  127. package/src/api/generated/client/types.gen.ts +0 -218
  128. package/src/api/generated/client/utils.gen.ts +0 -316
  129. package/src/api/generated/client.gen.ts +0 -16
  130. package/src/api/generated/core/auth.gen.ts +0 -48
  131. package/src/api/generated/core/bodySerializer.gen.ts +0 -82
  132. package/src/api/generated/core/params.gen.ts +0 -178
  133. package/src/api/generated/core/pathSerializer.gen.ts +0 -171
  134. package/src/api/generated/core/queryKeySerializer.gen.ts +0 -117
  135. package/src/api/generated/core/serverSentEvents.gen.ts +0 -242
  136. package/src/api/generated/core/types.gen.ts +0 -110
  137. package/src/api/generated/core/utils.gen.ts +0 -140
  138. package/src/api/generated/facade.gen.ts +0 -104
  139. package/src/api/generated/index.ts +0 -4
  140. package/src/api/generated/sdk.gen.ts +0 -175
  141. package/src/api/index.ts +0 -45
  142. package/src/api/makeEndpoint.ts +0 -54
  143. package/src/auto-instrument.js +0 -172
  144. package/src/index.js +0 -19
  145. package/src/instrumentation/anthropic/get_cache_and_reasoning_telemetry.js +0 -118
  146. package/src/instrumentation/anthropic/get_cache_config_telemetry.js +0 -90
  147. package/src/instrumentation/anthropic/get_streaming_stop_reason_telemetry.js +0 -121
  148. package/src/instrumentation/anthropic/get_tool_definitions_telemetry.js +0 -55
  149. package/src/instrumentation/anthropic/set_telemetry_attributes.js +0 -39
  150. package/src/instrumentation/bedrock/get_cache_config_telemetry.js +0 -106
  151. package/src/instrumentation/bedrock/get_cache_telemetry.js +0 -109
  152. package/src/instrumentation/bedrock/get_input_message_content_telemetry.js +0 -94
  153. package/src/instrumentation/bedrock/get_streaming_output_message_telemetry.js +0 -87
  154. package/src/instrumentation/bedrock/set_telemetry_attributes.js +0 -40
  155. package/src/instrumentation/cohere/get_chat_telemetry.js +0 -88
  156. package/src/instrumentation/cohere/get_embeddings_telemetry.js +0 -107
  157. package/src/instrumentation/cohere/set_telemetry_attributes.js +0 -32
  158. package/src/instrumentation/elevenlabs/full_instrumentation.js +0 -236
  159. package/src/instrumentation/google/get_audio_telemetry.js +0 -30
  160. package/src/instrumentation/google/get_cache_operations_telemetry.js +0 -171
  161. package/src/instrumentation/google/get_embeddings_telemetry.js +0 -99
  162. package/src/instrumentation/google/set_telemetry_attributes.js +0 -104
  163. package/src/instrumentation/openai/get_audio_telemetry.js +0 -149
  164. package/src/instrumentation/openai/get_cache_and_reasoning_telemetry.js +0 -71
  165. package/src/instrumentation/openai/get_cache_config_telemetry.js +0 -63
  166. package/src/instrumentation/openai/get_embeddings_telemetry.js +0 -107
  167. package/src/instrumentation/openai/get_streaming_usage.js +0 -81
  168. package/src/instrumentation/openai/set_telemetry_attributes.js +0 -41
  169. package/src/instrumentation/vercel/full_instrumentation.js +0 -52
  170. package/src/instrumentation/vercel/get_cache_creation_telemetry.js +0 -70
  171. package/src/logger.js +0 -8
  172. package/src/otel/exporter.js +0 -108
  173. package/src/otel/propagation.js +0 -146
  174. package/src/otel/span-filter.js +0 -69
  175. package/src/otel/span-processor.js +0 -170
  176. package/src/otel/vercel-ai-sdk-span-filter.js +0 -79
  177. package/src/setup.js +0 -167
  178. package/tests/api/index.test.js +0 -437
  179. package/tests/index.test.js +0 -884
  180. package/tests/instrumentation/anthropic/get_cache_and_reasoning_telemetry.test.js +0 -181
  181. package/tests/instrumentation/anthropic/get_cache_config_telemetry.test.js +0 -92
  182. package/tests/instrumentation/anthropic/get_streaming_stop_reason_telemetry.test.js +0 -117
  183. package/tests/instrumentation/anthropic/get_tool_definitions_telemetry.test.js +0 -97
  184. package/tests/instrumentation/bedrock/get_cache_config_telemetry.test.js +0 -107
  185. package/tests/instrumentation/bedrock/get_cache_telemetry.test.js +0 -118
  186. package/tests/instrumentation/bedrock/get_input_message_content_telemetry.test.js +0 -89
  187. package/tests/instrumentation/bedrock/get_streaming_output_message_telemetry.test.js +0 -87
  188. package/tests/instrumentation/cohere/get_chat_telemetry.test.js +0 -148
  189. package/tests/instrumentation/cohere/get_embeddings_telemetry.test.js +0 -132
  190. package/tests/instrumentation/elevenlabs/full_instrumentation.test.js +0 -258
  191. package/tests/instrumentation/google/get_cache_operations_telemetry.test.js +0 -130
  192. package/tests/instrumentation/google/get_embeddings_telemetry.test.js +0 -128
  193. package/tests/instrumentation/google/get_reasoning_telemetry.test.js +0 -41
  194. package/tests/instrumentation/google/set_telemetry_attributes.test.js +0 -219
  195. package/tests/instrumentation/openai/get_audio_telemetry.test.js +0 -170
  196. package/tests/instrumentation/openai/get_cache_and_reasoning_telemetry.test.js +0 -83
  197. package/tests/instrumentation/openai/get_cache_config_telemetry.test.js +0 -83
  198. package/tests/instrumentation/openai/get_embeddings_telemetry.test.js +0 -145
  199. package/tests/instrumentation/openai/get_streaming_usage.test.js +0 -105
  200. package/tests/instrumentation/vercel/full_instrumentation.test.js +0 -16
  201. package/tests/instrumentation/vercel/get_cache_creation_telemetry.test.js +0 -96
  202. package/tests/otel/vercel-ai-sdk-span-filter.test.js +0 -159
  203. package/tsconfig.json +0 -18
  204. /package/dist/{api → src/api}/caseConversion.d.ts +0 -0
  205. /package/dist/{api → src/api}/caseConversion.js +0 -0
  206. /package/dist/{api → src/api}/generated/client/client.gen.d.ts +0 -0
  207. /package/dist/{api → src/api}/generated/client/client.gen.js +0 -0
  208. /package/dist/{api → src/api}/generated/client/index.d.ts +0 -0
  209. /package/dist/{api → src/api}/generated/client/index.js +0 -0
  210. /package/dist/{api → src/api}/generated/client/types.gen.d.ts +0 -0
  211. /package/dist/{api → src/api}/generated/client/types.gen.js +0 -0
  212. /package/dist/{api → src/api}/generated/client/utils.gen.d.ts +0 -0
  213. /package/dist/{api → src/api}/generated/client/utils.gen.js +0 -0
  214. /package/dist/{api → src/api}/generated/client.gen.d.ts +0 -0
  215. /package/dist/{api → src/api}/generated/client.gen.js +0 -0
  216. /package/dist/{api → src/api}/generated/core/auth.gen.d.ts +0 -0
  217. /package/dist/{api → src/api}/generated/core/auth.gen.js +0 -0
  218. /package/dist/{api → src/api}/generated/core/bodySerializer.gen.d.ts +0 -0
  219. /package/dist/{api → src/api}/generated/core/bodySerializer.gen.js +0 -0
  220. /package/dist/{api → src/api}/generated/core/params.gen.d.ts +0 -0
  221. /package/dist/{api → src/api}/generated/core/params.gen.js +0 -0
  222. /package/dist/{api → src/api}/generated/core/pathSerializer.gen.d.ts +0 -0
  223. /package/dist/{api → src/api}/generated/core/pathSerializer.gen.js +0 -0
  224. /package/dist/{api → src/api}/generated/core/queryKeySerializer.gen.d.ts +0 -0
  225. /package/dist/{api → src/api}/generated/core/queryKeySerializer.gen.js +0 -0
  226. /package/dist/{api → src/api}/generated/core/serverSentEvents.gen.d.ts +0 -0
  227. /package/dist/{api → src/api}/generated/core/serverSentEvents.gen.js +0 -0
  228. /package/dist/{api → src/api}/generated/core/types.gen.d.ts +0 -0
  229. /package/dist/{api → src/api}/generated/core/types.gen.js +0 -0
  230. /package/dist/{api → src/api}/generated/core/utils.gen.d.ts +0 -0
  231. /package/dist/{api → src/api}/generated/core/utils.gen.js +0 -0
  232. /package/dist/{api → src/api}/generated/types.gen.js +0 -0
  233. /package/dist/{api → src/api}/index.d.ts +0 -0
  234. /package/dist/{api → src/api}/index.js +0 -0
  235. /package/dist/{api → src/api}/makeEndpoint.d.ts +0 -0
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
- # Weflayr Node.js SDK
1
+ # Weflayr JS/TS SDK
2
2
 
3
- Observability for Node.js — instrument any LLM client or function with one line.
3
+ Observability for JS/TS — instrument any LLM client or function with one line.
4
4
 
5
5
  ## Install
6
6
 
@@ -0,0 +1,51 @@
1
+ {
2
+ "name": "weflayr",
3
+ "version": "0.26.1",
4
+ "description": "Weflayr JS/TS SDK — instrument any LLM client",
5
+ "main": "dist/src/index.js",
6
+ "types": "dist/src/index.d.ts",
7
+ "files": [
8
+ "dist/src",
9
+ "dist/package.json"
10
+ ],
11
+ "scripts": {
12
+ "build": "tsc",
13
+ "generate-api": "openapi-ts && node scripts/generate_facade.mjs",
14
+ "pretest": "npm run build",
15
+ "prepublishOnly": "npm run build",
16
+ "test": "node --test",
17
+ "lint": "eslint src tests",
18
+ "lint:fix": "eslint src tests --fix",
19
+ "format": "prettier --write src tests",
20
+ "format:check": "prettier --check src tests"
21
+ },
22
+ "keywords": [
23
+ "llm",
24
+ "observability",
25
+ "weflayr"
26
+ ],
27
+ "author": "Weflayr <contact@weflayr.com>",
28
+ "license": "Elastic-2.0",
29
+ "engines": {
30
+ "node": ">=18.0.0"
31
+ },
32
+ "dependencies": {
33
+ "@opentelemetry/api": "^1.9.1",
34
+ "@opentelemetry/exporter-trace-otlp-http": "^0.219.0",
35
+ "@opentelemetry/instrumentation": "^0.219.0",
36
+ "@opentelemetry/resources": "^2.8.0",
37
+ "@opentelemetry/sdk-trace-base": "^2.8.0",
38
+ "@opentelemetry/sdk-trace-node": "^2.8.0",
39
+ "async-retry": "^1.3.3"
40
+ },
41
+ "devDependencies": {
42
+ "@hey-api/openapi-ts": "^0.99.0",
43
+ "@opentelemetry/context-async-hooks": "^2.8.0",
44
+ "@types/async-retry": "^1.4.9",
45
+ "@types/node": "^26.1.1",
46
+ "eslint": "^9.18.0",
47
+ "prettier": "^3.4.2",
48
+ "typescript": "^6.0.3",
49
+ "typescript-eslint": "^8.65.0"
50
+ }
51
+ }
@@ -1,30 +1,70 @@
1
1
  import type { CamelCaseDeep } from '../caseConversion.js';
2
2
  import type * as generatedTypes from './types.gen.js';
3
- export declare const getMargin: (options: import("../makeEndpoint.js").ClientOption & {
4
- query?: {
5
- customerNames?: string[] | undefined;
6
- cursor?: string | undefined;
3
+ export declare const getCosts: (options: import("../makeEndpoint.js").ClientOption & {
4
+ query?: undefined;
5
+ body: {
6
+ dateFrom: string;
7
+ dateTo?: string | undefined;
8
+ applyCredits?: boolean | undefined;
9
+ aggregate?: "day" | "week" | "month" | "quarter" | "year" | "all" | undefined;
10
+ groupBy?: "customer" | "feature" | "model" | "provider" | null | undefined;
11
+ customers?: string[] | undefined;
12
+ features?: string[] | undefined;
13
+ models?: string[] | undefined;
14
+ providers?: string[] | undefined;
15
+ cursor?: string | null | undefined;
7
16
  limit?: number | undefined;
8
- dateFrom?: string | undefined;
17
+ customerTags?: {
18
+ [x: string]: string[];
19
+ } | undefined;
20
+ runTags?: {
21
+ [x: string]: string[];
22
+ } | undefined;
23
+ };
24
+ path?: undefined;
25
+ }) => Promise<import("../makeEndpoint.js").CallResult<{
26
+ rows: {
27
+ dateFrom: string;
28
+ dateTo: string;
29
+ customer?: string | null | undefined;
30
+ feature?: string | null | undefined;
31
+ model?: string | null | undefined;
32
+ provider?: string | null | undefined;
33
+ cost: number;
34
+ avgFeatureRunCost: number;
35
+ maxFeatureRunCost: number;
36
+ }[];
37
+ nextCursor: string | null;
38
+ hasMore: boolean;
39
+ }, CamelCaseDeep<generatedTypes.GetCostsError>>>;
40
+ export declare const getMargin: (options: import("../makeEndpoint.js").ClientOption & {
41
+ query?: undefined;
42
+ body: {
43
+ dateFrom: string;
9
44
  dateTo?: string | undefined;
10
45
  applyCredits?: boolean | undefined;
11
- } | undefined;
12
- body?: undefined;
46
+ aggregate?: "day" | "week" | "month" | "quarter" | "year" | "all" | undefined;
47
+ groupBy?: "customer" | null | undefined;
48
+ customers?: string[] | undefined;
49
+ filterCustomersBasedOnFeatures?: string[] | undefined;
50
+ cursor?: string | null | undefined;
51
+ limit?: number | undefined;
52
+ };
13
53
  path?: undefined;
14
54
  }) => Promise<import("../makeEndpoint.js").CallResult<{
15
55
  rows: {
16
- customerName: string;
56
+ dateFrom: string;
57
+ dateTo: string;
58
+ customer?: string | null | undefined;
17
59
  revenue: number;
18
60
  cost: number;
19
61
  margin: number;
20
62
  marginPct: number | null;
21
- profitabilityStatus: "healthy" | "watch" | "at_risk" | "unprofitable" | "unknown";
63
+ riskStatus: "healthy" | "watch" | "at_risk" | "unprofitable" | "unknown";
22
64
  }[];
23
65
  nextCursor: string | null;
24
66
  hasMore: boolean;
25
- }, {
26
- error: string;
27
- }>>;
67
+ }, CamelCaseDeep<generatedTypes.GetMarginError>>>;
28
68
  export declare const deleteRevenue: (options: import("../makeEndpoint.js").ClientOption & {
29
69
  query: {
30
70
  customerNames: string[];
@@ -253,3 +293,37 @@ export declare const getFeatures: (options: import("../makeEndpoint.js").ClientO
253
293
  }, {
254
294
  error: string;
255
295
  }>>;
296
+ export declare const getPerformance: (options: import("../makeEndpoint.js").ClientOption & {
297
+ query?: undefined;
298
+ body: {
299
+ dateFrom: string;
300
+ dateTo?: string | undefined;
301
+ applyCredits?: boolean | undefined;
302
+ aggregate?: "day" | "week" | "month" | "quarter" | "year" | "all" | undefined;
303
+ groupBy?: "user" | null | undefined;
304
+ users?: string[] | undefined;
305
+ filterUsersBasedOnFeatures?: string[] | undefined;
306
+ cursor?: string | null | undefined;
307
+ limit?: number | undefined;
308
+ userTags?: {
309
+ [x: string]: string[];
310
+ } | undefined;
311
+ };
312
+ path?: undefined;
313
+ }) => Promise<import("../makeEndpoint.js").CallResult<{
314
+ rows: {
315
+ dateFrom: string;
316
+ dateTo: string;
317
+ user?: string | null | undefined;
318
+ cost: number;
319
+ keyMetrics: {
320
+ [x: string]: {
321
+ value: number;
322
+ totalCost: number;
323
+ costPerUnit: number;
324
+ };
325
+ };
326
+ }[];
327
+ nextCursor: string | null;
328
+ hasMore: boolean;
329
+ }, CamelCaseDeep<generatedTypes.GetPerformanceError>>>;
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- // Generated by services/sdk_node_js/scripts/generate_facade.mjs from
2
+ // Generated by services/sdk_ts/scripts/generate_facade.mjs from
3
3
  // sdk.gen.ts. Do not edit by hand.
4
4
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
5
5
  if (k2 === undefined) k2 = k;
@@ -35,9 +35,10 @@ var __importStar = (this && this.__importStar) || (function () {
35
35
  };
36
36
  })();
37
37
  Object.defineProperty(exports, "__esModule", { value: true });
38
- exports.getFeatures = exports.getCustomers = exports.getProviders = exports.getModels = exports.getTags = exports.getProject = exports.setCustomersTags = exports.getCustomersTags = exports.deleteCustomersTags = exports.setKeyMetrics = exports.getKeyMetrics = exports.deleteKeyMetrics = exports.setRevenue = exports.getRevenue = exports.deleteRevenue = exports.getMargin = void 0;
38
+ exports.getPerformance = exports.getFeatures = exports.getCustomers = exports.getProviders = exports.getModels = exports.getTags = exports.getProject = exports.setCustomersTags = exports.getCustomersTags = exports.deleteCustomersTags = exports.setKeyMetrics = exports.getKeyMetrics = exports.deleteKeyMetrics = exports.setRevenue = exports.getRevenue = exports.deleteRevenue = exports.getMargin = exports.getCosts = void 0;
39
39
  const makeEndpoint_js_1 = require("../makeEndpoint.js");
40
40
  const generated = __importStar(require("./sdk.gen.js"));
41
+ exports.getCosts = (0, makeEndpoint_js_1.makeEndpoint)(generated.getCosts);
41
42
  exports.getMargin = (0, makeEndpoint_js_1.makeEndpoint)(generated.getMargin);
42
43
  exports.deleteRevenue = (0, makeEndpoint_js_1.makeEndpoint)(generated.deleteRevenue);
43
44
  exports.getRevenue = (0, makeEndpoint_js_1.makeEndpoint)(generated.getRevenue);
@@ -54,3 +55,4 @@ exports.getModels = (0, makeEndpoint_js_1.makeEndpoint)(generated.getModels);
54
55
  exports.getProviders = (0, makeEndpoint_js_1.makeEndpoint)(generated.getProviders);
55
56
  exports.getCustomers = (0, makeEndpoint_js_1.makeEndpoint)(generated.getCustomers);
56
57
  exports.getFeatures = (0, makeEndpoint_js_1.makeEndpoint)(generated.getFeatures);
58
+ exports.getPerformance = (0, makeEndpoint_js_1.makeEndpoint)(generated.getPerformance);
@@ -0,0 +1,2 @@
1
+ export { deleteCustomersTags, deleteKeyMetrics, deleteRevenue, getCosts, getCustomers, getCustomersTags, getFeatures, getKeyMetrics, getMargin, getModels, getPerformance, getProject, getProviders, getRevenue, getTags, type Options, setCustomersTags, setKeyMetrics, setRevenue } from './sdk.gen.js';
2
+ export type { AllCustomerTagsOutput, ApiErrorOutput, ClientOptions, CostRow, CostsInput, CostsOutput, CustomerOutput, CustomersOutput, CustomersUpdatedOutput, CustomerTags, CustomerTagsOutput, DeleteCustomersTagsData, DeleteCustomersTagsError, DeleteCustomersTagsErrors, DeleteCustomersTagsResponse, DeleteCustomersTagsResponses, DeleteKeyMetricsData, DeleteKeyMetricsError, DeleteKeyMetricsErrors, DeleteKeyMetricsResponse, DeleteKeyMetricsResponses, DeleteRevenueData, DeleteRevenueError, DeleteRevenueErrors, DeleteRevenueResponse, DeleteRevenueResponses, FeaturesOutput, GetCostsData, GetCostsError, GetCostsErrors, GetCostsResponse, GetCostsResponses, GetCustomersData, GetCustomersError, GetCustomersErrors, GetCustomersResponse, GetCustomersResponses, GetCustomersTagsData, GetCustomersTagsError, GetCustomersTagsErrors, GetCustomersTagsResponse, GetCustomersTagsResponses, GetFeaturesData, GetFeaturesError, GetFeaturesErrors, GetFeaturesResponse, GetFeaturesResponses, GetKeyMetricsData, GetKeyMetricsError, GetKeyMetricsErrors, GetKeyMetricsResponse, GetKeyMetricsResponses, GetMarginData, GetMarginError, GetMarginErrors, GetMarginResponse, GetMarginResponses, GetModelsData, GetModelsError, GetModelsErrors, GetModelsResponse, GetModelsResponses, GetPerformanceData, GetPerformanceError, GetPerformanceErrors, GetPerformanceResponse, GetPerformanceResponses, GetProjectData, GetProjectError, GetProjectErrors, GetProjectResponse, GetProjectResponses, GetProvidersData, GetProvidersError, GetProvidersErrors, GetProvidersResponse, GetProvidersResponses, GetRevenueData, GetRevenueError, GetRevenueErrors, GetRevenueResponse, GetRevenueResponses, GetTagsData, GetTagsError, GetTagsErrors, GetTagsResponse, GetTagsResponses, InvalidFieldDetail, InvalidPayloadOutput, KeyMetricOutput, KeyMetricRow, KeyMetricRowOutput, KeyMetricValue, MarginInput, MarginOutput, MarginRow, ModelsOutput, PerformanceInput, PerformanceOutput, PerformanceRow, ProjectOutput, ProvidersOutput, RevenueOrKeyMetricDeletedRowOutput, RevenueOrKeyMetricImportedRowOutput, RevenueOutput, RevenueRow, RevenueRowOutput, SetCustomersTagsData, SetCustomersTagsError, SetCustomersTagsErrors, SetCustomersTagsResponse, SetCustomersTagsResponses, SetCustomerTagsInput, SetKeyMetricsData, SetKeyMetricsError, SetKeyMetricsErrors, SetKeyMetricsInput, SetKeyMetricsResponse, SetKeyMetricsResponses, SetRevenueData, SetRevenueError, SetRevenueErrors, SetRevenueInput, SetRevenueResponse, SetRevenueResponses, TagsDeletedOutput, TagsOutput } from './types.gen.js';
@@ -1,17 +1,19 @@
1
1
  "use strict";
2
2
  // This file is auto-generated by @hey-api/openapi-ts
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.setRevenue = exports.setKeyMetrics = exports.setCustomersTags = exports.getTags = exports.getRevenue = exports.getProviders = exports.getProject = exports.getModels = exports.getMargin = exports.getKeyMetrics = exports.getFeatures = exports.getCustomersTags = exports.getCustomers = exports.deleteRevenue = exports.deleteKeyMetrics = exports.deleteCustomersTags = void 0;
4
+ exports.setRevenue = exports.setKeyMetrics = exports.setCustomersTags = exports.getTags = exports.getRevenue = exports.getProviders = exports.getProject = exports.getPerformance = exports.getModels = exports.getMargin = exports.getKeyMetrics = exports.getFeatures = exports.getCustomersTags = exports.getCustomers = exports.getCosts = exports.deleteRevenue = exports.deleteKeyMetrics = exports.deleteCustomersTags = void 0;
5
5
  var sdk_gen_js_1 = require("./sdk.gen.js");
6
6
  Object.defineProperty(exports, "deleteCustomersTags", { enumerable: true, get: function () { return sdk_gen_js_1.deleteCustomersTags; } });
7
7
  Object.defineProperty(exports, "deleteKeyMetrics", { enumerable: true, get: function () { return sdk_gen_js_1.deleteKeyMetrics; } });
8
8
  Object.defineProperty(exports, "deleteRevenue", { enumerable: true, get: function () { return sdk_gen_js_1.deleteRevenue; } });
9
+ Object.defineProperty(exports, "getCosts", { enumerable: true, get: function () { return sdk_gen_js_1.getCosts; } });
9
10
  Object.defineProperty(exports, "getCustomers", { enumerable: true, get: function () { return sdk_gen_js_1.getCustomers; } });
10
11
  Object.defineProperty(exports, "getCustomersTags", { enumerable: true, get: function () { return sdk_gen_js_1.getCustomersTags; } });
11
12
  Object.defineProperty(exports, "getFeatures", { enumerable: true, get: function () { return sdk_gen_js_1.getFeatures; } });
12
13
  Object.defineProperty(exports, "getKeyMetrics", { enumerable: true, get: function () { return sdk_gen_js_1.getKeyMetrics; } });
13
14
  Object.defineProperty(exports, "getMargin", { enumerable: true, get: function () { return sdk_gen_js_1.getMargin; } });
14
15
  Object.defineProperty(exports, "getModels", { enumerable: true, get: function () { return sdk_gen_js_1.getModels; } });
16
+ Object.defineProperty(exports, "getPerformance", { enumerable: true, get: function () { return sdk_gen_js_1.getPerformance; } });
15
17
  Object.defineProperty(exports, "getProject", { enumerable: true, get: function () { return sdk_gen_js_1.getProject; } });
16
18
  Object.defineProperty(exports, "getProviders", { enumerable: true, get: function () { return sdk_gen_js_1.getProviders; } });
17
19
  Object.defineProperty(exports, "getRevenue", { enumerable: true, get: function () { return sdk_gen_js_1.getRevenue; } });
@@ -1,5 +1,5 @@
1
1
  import type { Client, ClientMeta, Options as Options2, RequestResult, TDataShape } from './client/index.js';
2
- import type { DeleteCustomersTagsData, DeleteCustomersTagsErrors, DeleteCustomersTagsResponses, DeleteKeyMetricsData, DeleteKeyMetricsErrors, DeleteKeyMetricsResponses, DeleteRevenueData, DeleteRevenueErrors, DeleteRevenueResponses, GetCustomersData, GetCustomersErrors, GetCustomersResponses, GetCustomersTagsData, GetCustomersTagsErrors, GetCustomersTagsResponses, GetFeaturesData, GetFeaturesErrors, GetFeaturesResponses, GetKeyMetricsData, GetKeyMetricsErrors, GetKeyMetricsResponses, GetMarginData, GetMarginErrors, GetMarginResponses, GetModelsData, GetModelsErrors, GetModelsResponses, GetProjectData, GetProjectErrors, GetProjectResponses, GetProvidersData, GetProvidersErrors, GetProvidersResponses, GetRevenueData, GetRevenueErrors, GetRevenueResponses, GetTagsData, GetTagsErrors, GetTagsResponses, SetCustomersTagsData, SetCustomersTagsErrors, SetCustomersTagsResponses, SetKeyMetricsData, SetKeyMetricsErrors, SetKeyMetricsResponses, SetRevenueData, SetRevenueErrors, SetRevenueResponses } from './types.gen.js';
2
+ import type { DeleteCustomersTagsData, DeleteCustomersTagsErrors, DeleteCustomersTagsResponses, DeleteKeyMetricsData, DeleteKeyMetricsErrors, DeleteKeyMetricsResponses, DeleteRevenueData, DeleteRevenueErrors, DeleteRevenueResponses, GetCostsData, GetCostsErrors, GetCostsResponses, GetCustomersData, GetCustomersErrors, GetCustomersResponses, GetCustomersTagsData, GetCustomersTagsErrors, GetCustomersTagsResponses, GetFeaturesData, GetFeaturesErrors, GetFeaturesResponses, GetKeyMetricsData, GetKeyMetricsErrors, GetKeyMetricsResponses, GetMarginData, GetMarginErrors, GetMarginResponses, GetModelsData, GetModelsErrors, GetModelsResponses, GetPerformanceData, GetPerformanceErrors, GetPerformanceResponses, GetProjectData, GetProjectErrors, GetProjectResponses, GetProvidersData, GetProvidersErrors, GetProvidersResponses, GetRevenueData, GetRevenueErrors, GetRevenueResponses, GetTagsData, GetTagsErrors, GetTagsResponses, SetCustomersTagsData, SetCustomersTagsErrors, SetCustomersTagsResponses, SetKeyMetricsData, SetKeyMetricsErrors, SetKeyMetricsResponses, SetRevenueData, SetRevenueErrors, SetRevenueResponses } from './types.gen.js';
3
3
  export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean, TResponse = unknown> = Options2<TData, ThrowOnError, TResponse> & {
4
4
  /**
5
5
  * You can provide a client instance returned by `createClient()` instead of
@@ -14,9 +14,13 @@ export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends
14
14
  meta?: keyof ClientMeta extends never ? Record<string, unknown> : ClientMeta;
15
15
  };
16
16
  /**
17
- * Per-customer gross margin, sorted by customer_name ascending; pass customer_names to narrow to specific customers, omit it for every customer's.
17
+ * Cost bucketed by aggregate and optionally grouped by one dimension (customer/feature/model/provider), with customer_tags/run_tags filters.
18
18
  */
19
- export declare const getMargin: <ThrowOnError extends boolean = false>(options?: Options<GetMarginData, ThrowOnError>) => RequestResult<GetMarginResponses, GetMarginErrors, ThrowOnError>;
19
+ export declare const getCosts: <ThrowOnError extends boolean = false>(options: Options<GetCostsData, ThrowOnError>) => RequestResult<GetCostsResponses, GetCostsErrors, ThrowOnError>;
20
+ /**
21
+ * Cost and revenue bucketed by aggregate and optionally grouped by customer, alongside the resulting margin and risk status.
22
+ */
23
+ export declare const getMargin: <ThrowOnError extends boolean = false>(options: Options<GetMarginData, ThrowOnError>) => RequestResult<GetMarginResponses, GetMarginErrors, ThrowOnError>;
20
24
  /**
21
25
  * Delete the given customers' API-uploaded revenue values.
22
26
  */
@@ -77,3 +81,7 @@ export declare const getCustomers: <ThrowOnError extends boolean = false>(option
77
81
  * Every distinct feature tag seen for the project.
78
82
  */
79
83
  export declare const getFeatures: <ThrowOnError extends boolean = false>(options?: Options<GetFeaturesData, ThrowOnError>) => RequestResult<GetFeaturesResponses, GetFeaturesErrors, ThrowOnError>;
84
+ /**
85
+ * Cost bucketed by aggregate and optionally grouped by user, alongside each key metric's value and cost-per-unit for the same period. Only available for internal-metric projects.
86
+ */
87
+ export declare const getPerformance: <ThrowOnError extends boolean = false>(options: Options<GetPerformanceData, ThrowOnError>) => RequestResult<GetPerformanceResponses, GetPerformanceErrors, ThrowOnError>;
@@ -1,15 +1,32 @@
1
1
  "use strict";
2
2
  // This file is auto-generated by @hey-api/openapi-ts
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.getFeatures = exports.getCustomers = exports.getProviders = exports.getModels = exports.getTags = exports.getProject = exports.setCustomersTags = exports.getCustomersTags = exports.deleteCustomersTags = exports.setKeyMetrics = exports.getKeyMetrics = exports.deleteKeyMetrics = exports.setRevenue = exports.getRevenue = exports.deleteRevenue = exports.getMargin = void 0;
4
+ exports.getPerformance = exports.getFeatures = exports.getCustomers = exports.getProviders = exports.getModels = exports.getTags = exports.getProject = exports.setCustomersTags = exports.getCustomersTags = exports.deleteCustomersTags = exports.setKeyMetrics = exports.getKeyMetrics = exports.deleteKeyMetrics = exports.setRevenue = exports.getRevenue = exports.deleteRevenue = exports.getMargin = exports.getCosts = void 0;
5
5
  const client_gen_js_1 = require("./client.gen.js");
6
6
  /**
7
- * Per-customer gross margin, sorted by customer_name ascending; pass customer_names to narrow to specific customers, omit it for every customer's.
7
+ * Cost bucketed by aggregate and optionally grouped by one dimension (customer/feature/model/provider), with customer_tags/run_tags filters.
8
8
  */
9
- const getMargin = (options) => (options?.client ?? client_gen_js_1.client).get({
9
+ const getCosts = (options) => (options.client ?? client_gen_js_1.client).post({
10
+ security: [{ scheme: 'bearer', type: 'http' }],
11
+ url: '/costs/',
12
+ ...options,
13
+ headers: {
14
+ 'Content-Type': 'application/json',
15
+ ...options.headers
16
+ }
17
+ });
18
+ exports.getCosts = getCosts;
19
+ /**
20
+ * Cost and revenue bucketed by aggregate and optionally grouped by customer, alongside the resulting margin and risk status.
21
+ */
22
+ const getMargin = (options) => (options.client ?? client_gen_js_1.client).post({
10
23
  security: [{ scheme: 'bearer', type: 'http' }],
11
24
  url: '/margin/',
12
- ...options
25
+ ...options,
26
+ headers: {
27
+ 'Content-Type': 'application/json',
28
+ ...options.headers
29
+ }
13
30
  });
14
31
  exports.getMargin = getMargin;
15
32
  /**
@@ -159,3 +176,16 @@ const getFeatures = (options) => (options?.client ?? client_gen_js_1.client).get
159
176
  ...options
160
177
  });
161
178
  exports.getFeatures = getFeatures;
179
+ /**
180
+ * Cost bucketed by aggregate and optionally grouped by user, alongside each key metric's value and cost-per-unit for the same period. Only available for internal-metric projects.
181
+ */
182
+ const getPerformance = (options) => (options.client ?? client_gen_js_1.client).post({
183
+ security: [{ scheme: 'bearer', type: 'http' }],
184
+ url: '/performance/',
185
+ ...options,
186
+ headers: {
187
+ 'Content-Type': 'application/json',
188
+ ...options.headers
189
+ }
190
+ });
191
+ exports.getPerformance = getPerformance;