autotel 3.6.0 → 4.0.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 (617) hide show
  1. package/dist/attribute-redacting-processor-DtTS9xxh.d.cts +175 -0
  2. package/dist/attribute-redacting-processor-DtTS9xxh.d.cts.map +1 -0
  3. package/dist/attribute-redacting-processor-DtTS9xxh.d.ts +175 -0
  4. package/dist/attribute-redacting-processor-DtTS9xxh.d.ts.map +1 -0
  5. package/dist/attribute-redacting-processor.cjs +374 -33
  6. package/dist/attribute-redacting-processor.cjs.map +1 -1
  7. package/dist/attribute-redacting-processor.d.cts +2 -207
  8. package/dist/attribute-redacting-processor.d.ts +2 -207
  9. package/dist/attribute-redacting-processor.js +368 -2
  10. package/dist/attribute-redacting-processor.js.map +1 -1
  11. package/dist/attributes-CmYpdqCN.js +591 -0
  12. package/dist/attributes-CmYpdqCN.js.map +1 -0
  13. package/dist/attributes-PZ5doLgw.cjs +704 -0
  14. package/dist/attributes-PZ5doLgw.cjs.map +1 -0
  15. package/dist/attributes.cjs +21 -85
  16. package/dist/attributes.d.cts +2 -20
  17. package/dist/attributes.d.ts +2 -20
  18. package/dist/attributes.js +3 -5
  19. package/dist/auto.cjs +50 -28
  20. package/dist/auto.cjs.map +1 -1
  21. package/dist/auto.d.cts +1 -2
  22. package/dist/auto.d.ts +1 -2
  23. package/dist/auto.js +49 -23
  24. package/dist/auto.js.map +1 -1
  25. package/dist/business-baggage.cjs +357 -13
  26. package/dist/business-baggage.cjs.map +1 -1
  27. package/dist/business-baggage.d.cts +106 -139
  28. package/dist/business-baggage.d.cts.map +1 -0
  29. package/dist/business-baggage.d.ts +106 -139
  30. package/dist/business-baggage.d.ts.map +1 -0
  31. package/dist/business-baggage.js +357 -2
  32. package/dist/business-baggage.js.map +1 -1
  33. package/dist/canonical-log-line-processor--RlFDHhm.cjs +377 -0
  34. package/dist/canonical-log-line-processor--RlFDHhm.cjs.map +1 -0
  35. package/dist/canonical-log-line-processor-BcRuAdRk.d.ts +147 -0
  36. package/dist/canonical-log-line-processor-BcRuAdRk.d.ts.map +1 -0
  37. package/dist/canonical-log-line-processor-DbBQT5vY.js +366 -0
  38. package/dist/canonical-log-line-processor-DbBQT5vY.js.map +1 -0
  39. package/dist/canonical-log-line-processor-xvjMgtpF.d.cts +147 -0
  40. package/dist/canonical-log-line-processor-xvjMgtpF.d.cts.map +1 -0
  41. package/dist/config.cjs +118 -22
  42. package/dist/config.cjs.map +1 -1
  43. package/dist/config.d.cts +33 -45
  44. package/dist/config.d.cts.map +1 -0
  45. package/dist/config.d.ts +33 -45
  46. package/dist/config.d.ts.map +1 -0
  47. package/dist/config.js +116 -3
  48. package/dist/config.js.map +1 -1
  49. package/dist/correlated-events-Bzh5y-UB.js +28 -0
  50. package/dist/correlated-events-Bzh5y-UB.js.map +1 -0
  51. package/dist/correlated-events-kSwLo3mi.cjs +34 -0
  52. package/dist/correlated-events-kSwLo3mi.cjs.map +1 -0
  53. package/dist/correlation-id.cjs +11 -54
  54. package/dist/correlation-id.d.cts +6 -5
  55. package/dist/correlation-id.d.cts.map +1 -0
  56. package/dist/correlation-id.d.ts +6 -5
  57. package/dist/correlation-id.d.ts.map +1 -0
  58. package/dist/correlation-id.js +3 -17
  59. package/dist/db.cjs +244 -209
  60. package/dist/db.cjs.map +1 -1
  61. package/dist/db.d.cts +28 -26
  62. package/dist/db.d.cts.map +1 -0
  63. package/dist/db.d.ts +28 -26
  64. package/dist/db.d.ts.map +1 -0
  65. package/dist/db.js +243 -207
  66. package/dist/db.js.map +1 -1
  67. package/dist/decorators.cjs +39 -66
  68. package/dist/decorators.cjs.map +1 -1
  69. package/dist/decorators.d.cts +10 -37
  70. package/dist/decorators.d.cts.map +1 -0
  71. package/dist/decorators.d.ts +10 -37
  72. package/dist/decorators.d.ts.map +1 -0
  73. package/dist/decorators.js +38 -64
  74. package/dist/decorators.js.map +1 -1
  75. package/dist/define-event-CreknLm3.d.ts +25 -0
  76. package/dist/define-event-CreknLm3.d.ts.map +1 -0
  77. package/dist/define-event-HZRizPwz.d.cts +25 -0
  78. package/dist/define-event-HZRizPwz.d.cts.map +1 -0
  79. package/dist/drain-pipeline.cjs +111 -9
  80. package/dist/drain-pipeline.cjs.map +1 -1
  81. package/dist/drain-pipeline.d.cts +27 -32
  82. package/dist/drain-pipeline.d.cts.map +1 -0
  83. package/dist/drain-pipeline.d.ts +27 -32
  84. package/dist/drain-pipeline.d.ts.map +1 -0
  85. package/dist/drain-pipeline.js +111 -2
  86. package/dist/drain-pipeline.js.map +1 -1
  87. package/dist/enrichers.cjs +59 -66
  88. package/dist/enrichers.cjs.map +1 -1
  89. package/dist/enrichers.d.cts +15 -13
  90. package/dist/enrichers.d.cts.map +1 -0
  91. package/dist/enrichers.d.ts +15 -13
  92. package/dist/enrichers.d.ts.map +1 -0
  93. package/dist/enrichers.js +58 -65
  94. package/dist/enrichers.js.map +1 -1
  95. package/dist/event-Dlqr4ZNL.cjs +778 -0
  96. package/dist/event-Dlqr4ZNL.cjs.map +1 -0
  97. package/dist/event-_58ryBjh.js +761 -0
  98. package/dist/event-_58ryBjh.js.map +1 -0
  99. package/dist/event-subscriber-D1XLkPzi.d.cts +223 -0
  100. package/dist/event-subscriber-D1XLkPzi.d.cts.map +1 -0
  101. package/dist/event-subscriber-D1XLkPzi.d.ts +223 -0
  102. package/dist/event-subscriber-D1XLkPzi.d.ts.map +1 -0
  103. package/dist/event-subscriber.cjs +0 -6
  104. package/dist/event-subscriber.d.cts +2 -221
  105. package/dist/event-subscriber.d.ts +2 -221
  106. package/dist/event-subscriber.js +1 -3
  107. package/dist/event-testing-BqRnI0z4.d.cts +106 -0
  108. package/dist/event-testing-BqRnI0z4.d.cts.map +1 -0
  109. package/dist/event-testing-CfFs3to2.d.ts +106 -0
  110. package/dist/event-testing-CfFs3to2.d.ts.map +1 -0
  111. package/dist/event-testing.cjs +93 -17
  112. package/dist/event-testing.cjs.map +1 -1
  113. package/dist/event-testing.d.cts +2 -110
  114. package/dist/event-testing.d.ts +2 -110
  115. package/dist/event-testing.js +91 -2
  116. package/dist/event-testing.js.map +1 -1
  117. package/dist/event.cjs +5 -37
  118. package/dist/event.d.cts +295 -340
  119. package/dist/event.d.cts.map +1 -0
  120. package/dist/event.d.ts +295 -340
  121. package/dist/event.d.ts.map +1 -0
  122. package/dist/event.js +3 -21
  123. package/dist/exporters.cjs +12 -16
  124. package/dist/exporters.d.cts +86 -111
  125. package/dist/exporters.d.cts.map +1 -0
  126. package/dist/exporters.d.ts +86 -111
  127. package/dist/exporters.d.ts.map +1 -0
  128. package/dist/exporters.js +4 -4
  129. package/dist/filtering-span-processor-B8R8B7Uk.d.cts +59 -0
  130. package/dist/filtering-span-processor-B8R8B7Uk.d.cts.map +1 -0
  131. package/dist/filtering-span-processor-B8R8B7Uk.d.ts +59 -0
  132. package/dist/filtering-span-processor-B8R8B7Uk.d.ts.map +1 -0
  133. package/dist/filtering-span-processor.cjs +49 -9
  134. package/dist/filtering-span-processor.cjs.map +1 -1
  135. package/dist/filtering-span-processor.d.cts +2 -80
  136. package/dist/filtering-span-processor.d.ts +2 -80
  137. package/dist/filtering-span-processor.js +49 -2
  138. package/dist/filtering-span-processor.js.map +1 -1
  139. package/dist/functional-BGkT8J-h.js +1265 -0
  140. package/dist/functional-BGkT8J-h.js.map +1 -0
  141. package/dist/functional-C4CzoVrX.cjs +1312 -0
  142. package/dist/functional-C4CzoVrX.cjs.map +1 -0
  143. package/dist/functional.cjs +11 -57
  144. package/dist/functional.d.cts +96 -97
  145. package/dist/functional.d.cts.map +1 -0
  146. package/dist/functional.d.ts +96 -97
  147. package/dist/functional.d.ts.map +1 -0
  148. package/dist/functional.js +3 -20
  149. package/dist/http.cjs +276 -176
  150. package/dist/http.cjs.map +1 -1
  151. package/dist/http.d.cts +17 -37
  152. package/dist/http.d.cts.map +1 -0
  153. package/dist/http.d.ts +17 -37
  154. package/dist/http.d.ts.map +1 -0
  155. package/dist/http.js +275 -174
  156. package/dist/http.js.map +1 -1
  157. package/dist/index-Ck06vlW2.d.ts +678 -0
  158. package/dist/index-Ck06vlW2.d.ts.map +1 -0
  159. package/dist/index-eKuioqT1.d.cts +678 -0
  160. package/dist/index-eKuioqT1.d.cts.map +1 -0
  161. package/dist/index.cjs +751 -1218
  162. package/dist/index.cjs.map +1 -1
  163. package/dist/index.d.cts +341 -659
  164. package/dist/index.d.cts.map +1 -0
  165. package/dist/index.d.ts +341 -659
  166. package/dist/index.d.ts.map +1 -0
  167. package/dist/index.js +606 -737
  168. package/dist/index.js.map +1 -1
  169. package/dist/init-CNp-ee80.d.cts +1157 -0
  170. package/dist/init-CNp-ee80.d.cts.map +1 -0
  171. package/dist/init-Ch6t7MNI.js +1015 -0
  172. package/dist/init-Ch6t7MNI.js.map +1 -0
  173. package/dist/init-DJQOdVlN.d.ts +1157 -0
  174. package/dist/init-DJQOdVlN.d.ts.map +1 -0
  175. package/dist/init-DvapOXCc.cjs +1092 -0
  176. package/dist/init-DvapOXCc.cjs.map +1 -0
  177. package/dist/instrumentation.cjs +159 -185
  178. package/dist/instrumentation.cjs.map +1 -1
  179. package/dist/instrumentation.d.cts +42 -40
  180. package/dist/instrumentation.d.cts.map +1 -0
  181. package/dist/instrumentation.d.ts +42 -40
  182. package/dist/instrumentation.d.ts.map +1 -0
  183. package/dist/instrumentation.js +158 -183
  184. package/dist/instrumentation.js.map +1 -1
  185. package/dist/logger-BauSUhUv.d.cts +313 -0
  186. package/dist/logger-BauSUhUv.d.cts.map +1 -0
  187. package/dist/logger-BauSUhUv.d.ts +313 -0
  188. package/dist/logger-BauSUhUv.d.ts.map +1 -0
  189. package/dist/logger.cjs +225 -25
  190. package/dist/logger.cjs.map +1 -1
  191. package/dist/logger.d.cts +2 -348
  192. package/dist/logger.d.ts +2 -348
  193. package/dist/logger.js +204 -4
  194. package/dist/logger.js.map +1 -1
  195. package/dist/messaging-adapters.cjs +292 -187
  196. package/dist/messaging-adapters.cjs.map +1 -1
  197. package/dist/messaging-adapters.d.cts +28 -66
  198. package/dist/messaging-adapters.d.cts.map +1 -0
  199. package/dist/messaging-adapters.d.ts +28 -66
  200. package/dist/messaging-adapters.d.ts.map +1 -0
  201. package/dist/messaging-adapters.js +291 -185
  202. package/dist/messaging-adapters.js.map +1 -1
  203. package/dist/messaging-testing.cjs +306 -372
  204. package/dist/messaging-testing.cjs.map +1 -1
  205. package/dist/messaging-testing.d.cts +194 -223
  206. package/dist/messaging-testing.d.cts.map +1 -0
  207. package/dist/messaging-testing.d.ts +194 -223
  208. package/dist/messaging-testing.d.ts.map +1 -0
  209. package/dist/messaging-testing.js +305 -371
  210. package/dist/messaging-testing.js.map +1 -1
  211. package/dist/messaging.cjs +757 -36
  212. package/dist/messaging.cjs.map +1 -1
  213. package/dist/messaging.d.cts +603 -644
  214. package/dist/messaging.d.cts.map +1 -0
  215. package/dist/messaging.d.ts +603 -644
  216. package/dist/messaging.d.ts.map +1 -0
  217. package/dist/messaging.js +756 -21
  218. package/dist/messaging.js.map +1 -1
  219. package/dist/metric-helpers.cjs +27 -27
  220. package/dist/metric-helpers.cjs.map +1 -1
  221. package/dist/metric-helpers.d.cts +4 -2
  222. package/dist/metric-helpers.d.cts.map +1 -0
  223. package/dist/metric-helpers.d.ts +4 -2
  224. package/dist/metric-helpers.d.ts.map +1 -0
  225. package/dist/metric-helpers.js +24 -4
  226. package/dist/metric-helpers.js.map +1 -1
  227. package/dist/metric-testing-DXdK3-Q3.d.ts +106 -0
  228. package/dist/metric-testing-DXdK3-Q3.d.ts.map +1 -0
  229. package/dist/metric-testing-MxvzChDp.d.cts +106 -0
  230. package/dist/metric-testing-MxvzChDp.d.cts.map +1 -0
  231. package/dist/metric-testing.cjs +93 -17
  232. package/dist/metric-testing.cjs.map +1 -1
  233. package/dist/metric-testing.d.cts +2 -110
  234. package/dist/metric-testing.d.ts +2 -110
  235. package/dist/metric-testing.js +91 -2
  236. package/dist/metric-testing.js.map +1 -1
  237. package/dist/metric.cjs +306 -22
  238. package/dist/metric.cjs.map +1 -1
  239. package/dist/metric.d.cts +170 -198
  240. package/dist/metric.d.cts.map +1 -0
  241. package/dist/metric.d.ts +170 -198
  242. package/dist/metric.d.ts.map +1 -0
  243. package/dist/metric.js +277 -7
  244. package/dist/metric.js.map +1 -1
  245. package/dist/node-require-DF5QBX6z.cjs +99 -0
  246. package/dist/node-require-DF5QBX6z.cjs.map +1 -0
  247. package/dist/node-require-Db1oDpLj.js +88 -0
  248. package/dist/node-require-Db1oDpLj.js.map +1 -0
  249. package/dist/operation-context-C-2hmmtP.js +59 -0
  250. package/dist/operation-context-C-2hmmtP.js.map +1 -0
  251. package/dist/operation-context-n4_obUwq.cjs +70 -0
  252. package/dist/operation-context-n4_obUwq.cjs.map +1 -0
  253. package/dist/parse-error.cjs +55 -9
  254. package/dist/parse-error.cjs.map +1 -1
  255. package/dist/parse-error.d.cts +12 -10
  256. package/dist/parse-error.d.cts.map +1 -0
  257. package/dist/parse-error.d.ts +12 -10
  258. package/dist/parse-error.d.ts.map +1 -0
  259. package/dist/parse-error.js +55 -2
  260. package/dist/parse-error.js.map +1 -1
  261. package/dist/pretty-console-exporter-CMzlrRNg.cjs +232 -0
  262. package/dist/pretty-console-exporter-CMzlrRNg.cjs.map +1 -0
  263. package/dist/pretty-console-exporter-DqKl_q9z.js +227 -0
  264. package/dist/pretty-console-exporter-DqKl_q9z.js.map +1 -0
  265. package/dist/processors.cjs +13 -17
  266. package/dist/processors.d.cts +3 -171
  267. package/dist/processors.d.ts +3 -171
  268. package/dist/processors.js +4 -4
  269. package/dist/register.cjs +35 -6
  270. package/dist/register.cjs.map +1 -1
  271. package/dist/register.d.cts +1 -2
  272. package/dist/register.d.ts +1 -2
  273. package/dist/register.js +36 -3
  274. package/dist/register.js.map +1 -1
  275. package/dist/registry-DVSmWg6Y.js +175 -0
  276. package/dist/registry-DVSmWg6Y.js.map +1 -0
  277. package/dist/registry-DYgvb62e.cjs +319 -0
  278. package/dist/registry-DYgvb62e.cjs.map +1 -0
  279. package/dist/sampling-CR0Va1VB.d.ts +351 -0
  280. package/dist/sampling-CR0Va1VB.d.ts.map +1 -0
  281. package/dist/sampling-DfYhDJij.d.cts +351 -0
  282. package/dist/sampling-DfYhDJij.d.cts.map +1 -0
  283. package/dist/sampling.cjs +452 -60
  284. package/dist/sampling.cjs.map +1 -1
  285. package/dist/sampling.d.cts +2 -379
  286. package/dist/sampling.d.ts +2 -379
  287. package/dist/sampling.js +441 -5
  288. package/dist/sampling.js.map +1 -1
  289. package/dist/security-schema.cjs +65 -46
  290. package/dist/security-schema.cjs.map +1 -1
  291. package/dist/security-schema.d.cts +23 -26
  292. package/dist/security-schema.d.cts.map +1 -0
  293. package/dist/security-schema.d.ts +23 -26
  294. package/dist/security-schema.d.ts.map +1 -0
  295. package/dist/security-schema.js +64 -45
  296. package/dist/security-schema.js.map +1 -1
  297. package/dist/semantic-conventions-FhSxv-bK.d.cts +32 -0
  298. package/dist/semantic-conventions-FhSxv-bK.d.cts.map +1 -0
  299. package/dist/semantic-conventions-FhSxv-bK.d.ts +32 -0
  300. package/dist/semantic-conventions-FhSxv-bK.d.ts.map +1 -0
  301. package/dist/semantic-conventions.cjs +15 -26
  302. package/dist/semantic-conventions.cjs.map +1 -1
  303. package/dist/semantic-conventions.d.cts +2 -29
  304. package/dist/semantic-conventions.d.ts +2 -29
  305. package/dist/semantic-conventions.js +12 -3
  306. package/dist/semantic-conventions.js.map +1 -1
  307. package/dist/semantic-helpers.cjs +327 -39
  308. package/dist/semantic-helpers.cjs.map +1 -1
  309. package/dist/semantic-helpers.d.cts +30 -150
  310. package/dist/semantic-helpers.d.cts.map +1 -0
  311. package/dist/semantic-helpers.d.ts +30 -150
  312. package/dist/semantic-helpers.d.ts.map +1 -0
  313. package/dist/semantic-helpers.js +326 -20
  314. package/dist/semantic-helpers.js.map +1 -1
  315. package/dist/span-name-normalizer-8ZOGJuwv.d.cts +70 -0
  316. package/dist/span-name-normalizer-8ZOGJuwv.d.cts.map +1 -0
  317. package/dist/span-name-normalizer-8ZOGJuwv.d.ts +70 -0
  318. package/dist/span-name-normalizer-8ZOGJuwv.d.ts.map +1 -0
  319. package/dist/span-name-normalizer.cjs +95 -17
  320. package/dist/span-name-normalizer.cjs.map +1 -1
  321. package/dist/span-name-normalizer.d.cts +2 -94
  322. package/dist/span-name-normalizer.d.ts +2 -94
  323. package/dist/span-name-normalizer.js +93 -2
  324. package/dist/span-name-normalizer.js.map +1 -1
  325. package/dist/stable-hash-BNTMrmdB.cjs +28 -0
  326. package/dist/stable-hash-BNTMrmdB.cjs.map +1 -0
  327. package/dist/stable-hash-Cg5cT34Q.js +23 -0
  328. package/dist/stable-hash-Cg5cT34Q.js.map +1 -0
  329. package/dist/structured-error-9--cxBay.js +143 -0
  330. package/dist/structured-error-9--cxBay.js.map +1 -0
  331. package/dist/structured-error-CHg7DoIQ.cjs +178 -0
  332. package/dist/structured-error-CHg7DoIQ.cjs.map +1 -0
  333. package/dist/tail-sampling-processor.cjs +26 -13
  334. package/dist/tail-sampling-processor.cjs.map +1 -1
  335. package/dist/tail-sampling-processor.d.cts +11 -23
  336. package/dist/tail-sampling-processor.d.cts.map +1 -0
  337. package/dist/tail-sampling-processor.d.ts +11 -23
  338. package/dist/tail-sampling-processor.d.ts.map +1 -0
  339. package/dist/tail-sampling-processor.js +27 -6
  340. package/dist/tail-sampling-processor.js.map +1 -1
  341. package/dist/test-span-collector.cjs +70 -72
  342. package/dist/test-span-collector.cjs.map +1 -1
  343. package/dist/test-span-collector.d.cts +25 -43
  344. package/dist/test-span-collector.d.cts.map +1 -0
  345. package/dist/test-span-collector.d.ts +25 -43
  346. package/dist/test-span-collector.d.ts.map +1 -0
  347. package/dist/test-span-collector.js +69 -70
  348. package/dist/test-span-collector.js.map +1 -1
  349. package/dist/testing.cjs +389 -278
  350. package/dist/testing.cjs.map +1 -1
  351. package/dist/testing.d.cts +39 -62
  352. package/dist/testing.d.cts.map +1 -0
  353. package/dist/testing.d.ts +39 -62
  354. package/dist/testing.d.ts.map +1 -0
  355. package/dist/testing.js +386 -265
  356. package/dist/testing.js.map +1 -1
  357. package/dist/trace-context-Cijqoi6e.d.cts +212 -0
  358. package/dist/trace-context-Cijqoi6e.d.cts.map +1 -0
  359. package/dist/trace-context-Cijqoi6e.d.ts +212 -0
  360. package/dist/trace-context-Cijqoi6e.d.ts.map +1 -0
  361. package/dist/trace-helpers.cjs +634 -54
  362. package/dist/trace-helpers.cjs.map +1 -1
  363. package/dist/trace-helpers.d.cts +17 -49
  364. package/dist/trace-helpers.d.cts.map +1 -0
  365. package/dist/trace-helpers.d.ts +17 -49
  366. package/dist/trace-helpers.d.ts.map +1 -0
  367. package/dist/trace-helpers.js +624 -3
  368. package/dist/trace-helpers.js.map +1 -1
  369. package/dist/tracer-provider.cjs +227 -16
  370. package/dist/tracer-provider.cjs.map +1 -1
  371. package/dist/tracer-provider.d.cts +5 -4
  372. package/dist/tracer-provider.d.cts.map +1 -0
  373. package/dist/tracer-provider.d.ts +5 -4
  374. package/dist/tracer-provider.d.ts.map +1 -0
  375. package/dist/tracer-provider.js +227 -2
  376. package/dist/tracer-provider.js.map +1 -1
  377. package/dist/track-3HY4NGV-.cjs +1212 -0
  378. package/dist/track-3HY4NGV-.cjs.map +1 -0
  379. package/dist/track-nsKVy-pj.js +1111 -0
  380. package/dist/track-nsKVy-pj.js.map +1 -0
  381. package/dist/validate.cjs +178 -115
  382. package/dist/validate.cjs.map +1 -1
  383. package/dist/validate.d.cts +40 -64
  384. package/dist/validate.d.cts.map +1 -0
  385. package/dist/validate.d.ts +40 -64
  386. package/dist/validate.d.ts.map +1 -0
  387. package/dist/validate.js +177 -113
  388. package/dist/validate.js.map +1 -1
  389. package/dist/validation-attributes.cjs +42 -17
  390. package/dist/validation-attributes.cjs.map +1 -1
  391. package/dist/validation-attributes.d.cts +13 -20
  392. package/dist/validation-attributes.d.cts.map +1 -0
  393. package/dist/validation-attributes.d.ts +13 -20
  394. package/dist/validation-attributes.d.ts.map +1 -0
  395. package/dist/validation-attributes.js +40 -2
  396. package/dist/validation-attributes.js.map +1 -1
  397. package/dist/webhook.cjs +286 -256
  398. package/dist/webhook.cjs.map +1 -1
  399. package/dist/webhook.d.cts +157 -192
  400. package/dist/webhook.d.cts.map +1 -0
  401. package/dist/webhook.d.ts +157 -192
  402. package/dist/webhook.d.ts.map +1 -0
  403. package/dist/webhook.js +285 -254
  404. package/dist/webhook.js.map +1 -1
  405. package/dist/workflow-distributed.cjs +498 -412
  406. package/dist/workflow-distributed.cjs.map +1 -1
  407. package/dist/workflow-distributed.d.cts +163 -173
  408. package/dist/workflow-distributed.d.cts.map +1 -0
  409. package/dist/workflow-distributed.d.ts +163 -173
  410. package/dist/workflow-distributed.d.ts.map +1 -0
  411. package/dist/workflow-distributed.js +497 -410
  412. package/dist/workflow-distributed.js.map +1 -1
  413. package/dist/workflow.cjs +405 -40
  414. package/dist/workflow.cjs.map +1 -1
  415. package/dist/workflow.d.cts +78 -131
  416. package/dist/workflow.d.cts.map +1 -0
  417. package/dist/workflow.d.ts +78 -131
  418. package/dist/workflow.d.ts.map +1 -0
  419. package/dist/workflow.js +403 -21
  420. package/dist/workflow.js.map +1 -1
  421. package/dist/yaml-config-B3dQ82GR.cjs +272 -0
  422. package/dist/yaml-config-B3dQ82GR.cjs.map +1 -0
  423. package/dist/yaml-config.cjs +5 -24
  424. package/dist/yaml-config.d.cts +30 -64
  425. package/dist/yaml-config.d.cts.map +1 -0
  426. package/dist/yaml-config.d.ts +30 -64
  427. package/dist/yaml-config.d.ts.map +1 -0
  428. package/dist/yaml-config.js +226 -7
  429. package/dist/yaml-config.js.map +1 -1
  430. package/package.json +4 -4
  431. package/skills/analyze-traces/SKILL.md +14 -12
  432. package/skills/review-otel-patterns/SKILL.md +4 -2
  433. package/skills/tune-sampling/SKILL.md +8 -3
  434. package/src/attributes/builders.ts +2 -20
  435. package/src/attributes/index.ts +0 -1
  436. package/src/attributes/registry.ts +2 -9
  437. package/src/attributes/types.ts +0 -8
  438. package/src/index.ts +7 -41
  439. package/src/request-logger.test.ts +53 -1
  440. package/src/request-logger.ts +58 -0
  441. package/src/semantic-helpers.test.ts +2 -87
  442. package/src/semantic-helpers.ts +0 -146
  443. package/src/validate.test.ts +3 -1
  444. package/src/validate.ts +9 -3
  445. package/dist/attributes.cjs.map +0 -1
  446. package/dist/attributes.js.map +0 -1
  447. package/dist/chunk-2ZKEORFN.cjs +0 -14
  448. package/dist/chunk-2ZKEORFN.cjs.map +0 -1
  449. package/dist/chunk-3QXBFGKP.js +0 -344
  450. package/dist/chunk-3QXBFGKP.js.map +0 -1
  451. package/dist/chunk-454CH4OV.js +0 -744
  452. package/dist/chunk-454CH4OV.js.map +0 -1
  453. package/dist/chunk-4A53YIAX.js +0 -180
  454. package/dist/chunk-4A53YIAX.js.map +0 -1
  455. package/dist/chunk-4IFSYQVX.js +0 -337
  456. package/dist/chunk-4IFSYQVX.js.map +0 -1
  457. package/dist/chunk-4P6ZOARG.cjs +0 -33
  458. package/dist/chunk-4P6ZOARG.cjs.map +0 -1
  459. package/dist/chunk-55ER2KD5.js +0 -228
  460. package/dist/chunk-55ER2KD5.js.map +0 -1
  461. package/dist/chunk-5ZN622AO.js +0 -73
  462. package/dist/chunk-5ZN622AO.js.map +0 -1
  463. package/dist/chunk-66YJ66GG.js +0 -1021
  464. package/dist/chunk-66YJ66GG.js.map +0 -1
  465. package/dist/chunk-6S5RUKU3.cjs +0 -347
  466. package/dist/chunk-6S5RUKU3.cjs.map +0 -1
  467. package/dist/chunk-6UQRVUN3.js +0 -222
  468. package/dist/chunk-6UQRVUN3.js.map +0 -1
  469. package/dist/chunk-7552UTQW.js +0 -11
  470. package/dist/chunk-7552UTQW.js.map +0 -1
  471. package/dist/chunk-7EQ4G4SI.cjs +0 -146
  472. package/dist/chunk-7EQ4G4SI.cjs.map +0 -1
  473. package/dist/chunk-7SAWIN74.js +0 -285
  474. package/dist/chunk-7SAWIN74.js.map +0 -1
  475. package/dist/chunk-A4E5AQFK.js +0 -30
  476. package/dist/chunk-A4E5AQFK.js.map +0 -1
  477. package/dist/chunk-ALPYR2GC.js +0 -1061
  478. package/dist/chunk-ALPYR2GC.js.map +0 -1
  479. package/dist/chunk-B7SWBE4P.cjs +0 -799
  480. package/dist/chunk-B7SWBE4P.cjs.map +0 -1
  481. package/dist/chunk-BZHG5IZ4.js +0 -73
  482. package/dist/chunk-BZHG5IZ4.js.map +0 -1
  483. package/dist/chunk-CEAQK2QY.cjs +0 -32
  484. package/dist/chunk-CEAQK2QY.cjs.map +0 -1
  485. package/dist/chunk-CMHVQR6P.js +0 -170
  486. package/dist/chunk-CMHVQR6P.js.map +0 -1
  487. package/dist/chunk-CU6IDACR.cjs +0 -224
  488. package/dist/chunk-CU6IDACR.cjs.map +0 -1
  489. package/dist/chunk-D4TM63S3.js +0 -795
  490. package/dist/chunk-D4TM63S3.js.map +0 -1
  491. package/dist/chunk-DCEDJQGG.js +0 -28
  492. package/dist/chunk-DCEDJQGG.js.map +0 -1
  493. package/dist/chunk-DPSA4QLA.js +0 -344
  494. package/dist/chunk-DPSA4QLA.js.map +0 -1
  495. package/dist/chunk-E6TERL5O.cjs +0 -23
  496. package/dist/chunk-E6TERL5O.cjs.map +0 -1
  497. package/dist/chunk-EE6CPXKH.cjs +0 -164
  498. package/dist/chunk-EE6CPXKH.cjs.map +0 -1
  499. package/dist/chunk-EOFB7XCL.cjs +0 -837
  500. package/dist/chunk-EOFB7XCL.cjs.map +0 -1
  501. package/dist/chunk-ESLWRGAG.cjs +0 -92
  502. package/dist/chunk-ESLWRGAG.cjs.map +0 -1
  503. package/dist/chunk-ESMHTKLJ.cjs +0 -206
  504. package/dist/chunk-ESMHTKLJ.cjs.map +0 -1
  505. package/dist/chunk-FMTHVSYY.cjs +0 -1039
  506. package/dist/chunk-FMTHVSYY.cjs.map +0 -1
  507. package/dist/chunk-FU6R566Y.cjs +0 -236
  508. package/dist/chunk-FU6R566Y.cjs.map +0 -1
  509. package/dist/chunk-GYR5K654.js +0 -91
  510. package/dist/chunk-GYR5K654.js.map +0 -1
  511. package/dist/chunk-HA2WBOGQ.js +0 -57
  512. package/dist/chunk-HA2WBOGQ.js.map +0 -1
  513. package/dist/chunk-HT5JQKN2.js +0 -118
  514. package/dist/chunk-HT5JQKN2.js.map +0 -1
  515. package/dist/chunk-INJD3G4K.cjs +0 -340
  516. package/dist/chunk-INJD3G4K.cjs.map +0 -1
  517. package/dist/chunk-IOYFAFHJ.cjs +0 -95
  518. package/dist/chunk-IOYFAFHJ.cjs.map +0 -1
  519. package/dist/chunk-J5QENANM.js +0 -87
  520. package/dist/chunk-J5QENANM.js.map +0 -1
  521. package/dist/chunk-J7VGRIAJ.js +0 -64
  522. package/dist/chunk-J7VGRIAJ.js.map +0 -1
  523. package/dist/chunk-KFOHQK7X.js +0 -144
  524. package/dist/chunk-KFOHQK7X.js.map +0 -1
  525. package/dist/chunk-KIL5CUN6.js +0 -31
  526. package/dist/chunk-KIL5CUN6.js.map +0 -1
  527. package/dist/chunk-KYXZS3EA.cjs +0 -100
  528. package/dist/chunk-KYXZS3EA.cjs.map +0 -1
  529. package/dist/chunk-LITNXTTT.js +0 -3
  530. package/dist/chunk-LITNXTTT.js.map +0 -1
  531. package/dist/chunk-LVIPBYFE.js +0 -157
  532. package/dist/chunk-LVIPBYFE.js.map +0 -1
  533. package/dist/chunk-M3LFHHTN.cjs +0 -764
  534. package/dist/chunk-M3LFHHTN.cjs.map +0 -1
  535. package/dist/chunk-N25JDZSC.js +0 -95
  536. package/dist/chunk-N25JDZSC.js.map +0 -1
  537. package/dist/chunk-NEIB3TLD.cjs +0 -360
  538. package/dist/chunk-NEIB3TLD.cjs.map +0 -1
  539. package/dist/chunk-NENU7E6V.cjs +0 -344
  540. package/dist/chunk-NENU7E6V.cjs.map +0 -1
  541. package/dist/chunk-NVAI5CCN.cjs +0 -39
  542. package/dist/chunk-NVAI5CCN.cjs.map +0 -1
  543. package/dist/chunk-NZ72VDNY.cjs +0 -4
  544. package/dist/chunk-NZ72VDNY.cjs.map +0 -1
  545. package/dist/chunk-OPPXYVEZ.cjs +0 -131
  546. package/dist/chunk-OPPXYVEZ.cjs.map +0 -1
  547. package/dist/chunk-Q4EULJQY.js +0 -35
  548. package/dist/chunk-Q4EULJQY.js.map +0 -1
  549. package/dist/chunk-QF7ARNUM.js +0 -339
  550. package/dist/chunk-QF7ARNUM.js.map +0 -1
  551. package/dist/chunk-QWW3E3JM.cjs +0 -178
  552. package/dist/chunk-QWW3E3JM.cjs.map +0 -1
  553. package/dist/chunk-R7QYGZUP.cjs +0 -1075
  554. package/dist/chunk-R7QYGZUP.cjs.map +0 -1
  555. package/dist/chunk-RUPKBKUF.js +0 -352
  556. package/dist/chunk-RUPKBKUF.js.map +0 -1
  557. package/dist/chunk-SEO6NAQT.js +0 -14
  558. package/dist/chunk-SEO6NAQT.js.map +0 -1
  559. package/dist/chunk-T4B5LB6E.cjs +0 -66
  560. package/dist/chunk-T4B5LB6E.cjs.map +0 -1
  561. package/dist/chunk-T5WRA76K.cjs +0 -32
  562. package/dist/chunk-T5WRA76K.cjs.map +0 -1
  563. package/dist/chunk-T7JO2TCP.js +0 -1233
  564. package/dist/chunk-T7JO2TCP.js.map +0 -1
  565. package/dist/chunk-TC5ZPWM4.cjs +0 -289
  566. package/dist/chunk-TC5ZPWM4.cjs.map +0 -1
  567. package/dist/chunk-TQ5UWA7S.js +0 -26
  568. package/dist/chunk-TQ5UWA7S.js.map +0 -1
  569. package/dist/chunk-UIKYE2QZ.js +0 -833
  570. package/dist/chunk-UIKYE2QZ.js.map +0 -1
  571. package/dist/chunk-UNPLAVE7.js +0 -21
  572. package/dist/chunk-UNPLAVE7.js.map +0 -1
  573. package/dist/chunk-UY3UYPBZ.cjs +0 -77
  574. package/dist/chunk-UY3UYPBZ.cjs.map +0 -1
  575. package/dist/chunk-V7UBMJAB.cjs +0 -1242
  576. package/dist/chunk-V7UBMJAB.cjs.map +0 -1
  577. package/dist/chunk-VH77IPJN.cjs +0 -358
  578. package/dist/chunk-VH77IPJN.cjs.map +0 -1
  579. package/dist/chunk-VQTCQKHQ.cjs +0 -17
  580. package/dist/chunk-VQTCQKHQ.cjs.map +0 -1
  581. package/dist/chunk-WGWSHJ2N.js +0 -38
  582. package/dist/chunk-WGWSHJ2N.js.map +0 -1
  583. package/dist/chunk-WJH6IYU2.cjs +0 -32
  584. package/dist/chunk-WJH6IYU2.cjs.map +0 -1
  585. package/dist/chunk-YREV3LGG.cjs +0 -61
  586. package/dist/chunk-YREV3LGG.cjs.map +0 -1
  587. package/dist/chunk-YTXEZ4SD.cjs +0 -77
  588. package/dist/chunk-YTXEZ4SD.cjs.map +0 -1
  589. package/dist/chunk-ZNMBW67B.cjs +0 -40
  590. package/dist/chunk-ZNMBW67B.cjs.map +0 -1
  591. package/dist/correlation-id.cjs.map +0 -1
  592. package/dist/correlation-id.js.map +0 -1
  593. package/dist/define-event-BL6Li7CM.d.ts +0 -23
  594. package/dist/define-event-ClP3T1Jx.d.cts +0 -23
  595. package/dist/event-subscriber.cjs.map +0 -1
  596. package/dist/event-subscriber.js.map +0 -1
  597. package/dist/event.cjs.map +0 -1
  598. package/dist/event.js.map +0 -1
  599. package/dist/exporters.cjs.map +0 -1
  600. package/dist/exporters.js.map +0 -1
  601. package/dist/functional.cjs.map +0 -1
  602. package/dist/functional.js.map +0 -1
  603. package/dist/init-DIowiiCh.d.ts +0 -1167
  604. package/dist/init-j-A1zI16.d.cts +0 -1167
  605. package/dist/processors.cjs.map +0 -1
  606. package/dist/processors.js.map +0 -1
  607. package/dist/trace-context-DbGKd1Rn.d.cts +0 -213
  608. package/dist/trace-context-DbGKd1Rn.d.ts +0 -213
  609. package/dist/utils-BahBCFtJ.d.cts +0 -712
  610. package/dist/utils-CLKwaUlG.d.ts +0 -712
  611. package/dist/yaml-config.cjs.map +0 -1
  612. package/src/gen-ai-cost.test.ts +0 -81
  613. package/src/gen-ai-cost.ts +0 -145
  614. package/src/gen-ai-events.test.ts +0 -135
  615. package/src/gen-ai-events.ts +0 -208
  616. package/src/gen-ai-metrics.test.ts +0 -96
  617. package/src/gen-ai-metrics.ts +0 -128
package/dist/event.d.cts CHANGED
@@ -1,54 +1,8 @@
1
- import { Logger } from './logger.cjs';
2
- import { EventSubscriber, EventAttributes, FunnelStatus, OutcomeStatus, EventAttributesInput } from './event-subscriber.cjs';
3
- import { EventCollector } from './event-testing.cjs';
4
- import 'pino';
5
-
6
- /**
7
- * Events API for product events platforms
8
- *
9
- * Track user behavior, business events, and critical actions.
10
- * Sends to product events platforms (PostHog, Mixpanel, Amplitude) via subscribers.
11
- * For business people who think in events/funnels.
12
- *
13
- * For OpenTelemetry metrics (Prometheus/Grafana), use the Metrics class instead.
14
- *
15
- * @example Recommended: Configure subscribers in init(), use track() function
16
- * ```typescript
17
- * import { init, track } from 'autotel';
18
- * import { PostHogSubscriber } from 'autotel-subscribers/posthog';
19
- *
20
- * init({
21
- * service: 'my-app',
22
- * subscribers: [new PostHogSubscriber({ apiKey: 'phc_...' })]
23
- * });
24
- *
25
- * // Track events - uses subscribers from init()
26
- * track('application.submitted', { jobId: '123', userId: '456' });
27
- * ```
28
- *
29
- * @example Create Event instance (inherits subscribers from init)
30
- * ```typescript
31
- * import { Event } from 'autotel/event';
32
- *
33
- * // Uses subscribers configured in init()
34
- * const event = new Event('job-application');
35
- * event.trackEvent('application.submitted', { jobId: '123' });
36
- * ```
37
- *
38
- * @example Override subscribers for specific Event instance
39
- * ```typescript
40
- * import { Event } from 'autotel/event';
41
- * import { PostHogSubscriber } from 'autotel-subscribers/posthog';
42
- *
43
- * // Override: use different subscribers for this instance
44
- * const event = new Event('job-application', {
45
- * subscribers: [new PostHogSubscriber({ apiKey: 'phc_different_project' })]
46
- * });
47
- *
48
- * event.trackEvent('application.submitted', { jobId: '123' });
49
- * ```
50
- */
1
+ import { s as Logger } from "./logger-BauSUhUv.cjs";
2
+ import { a as EventSubscriber, c as OutcomeStatus, n as EventAttributes, r as EventAttributesInput, s as FunnelStatus } from "./event-subscriber-D1XLkPzi.cjs";
3
+ import { t as EventCollector } from "./event-testing-BqRnI0z4.cjs";
51
4
 
5
+ //#region src/event.d.ts
52
6
  /**
53
7
  * Events class for tracking user behavior and product events
54
8
  *
@@ -65,296 +19,296 @@ import 'pino';
65
19
  * Events options
66
20
  */
67
21
  interface EventsOptions {
68
- /** Optional logger for audit trail */
69
- logger?: Logger;
70
- /** Optional collector for testing (captures events in memory) */
71
- collector?: EventCollector;
72
- /**
73
- * Optional subscribers to send events to other platforms
74
- * (e.g., PostHog, Mixpanel, Amplitude)
75
- *
76
- * **Subscriber Resolution**:
77
- * - If provided → uses these subscribers (instance override)
78
- * - If not provided → falls back to subscribers from `init()` (global config)
79
- * - If neither → no subscribers (events logged only)
80
- *
81
- * Install `autotel-subscribers` package for ready-made subscribers
82
- */
83
- subscribers?: EventSubscriber[];
22
+ /** Optional logger for audit trail */
23
+ logger?: Logger;
24
+ /** Optional collector for testing (captures events in memory) */
25
+ collector?: EventCollector;
26
+ /**
27
+ * Optional subscribers to send events to other platforms
28
+ * (e.g., PostHog, Mixpanel, Amplitude)
29
+ *
30
+ * **Subscriber Resolution**:
31
+ * - If provided → uses these subscribers (instance override)
32
+ * - If not provided → falls back to subscribers from `init()` (global config)
33
+ * - If neither → no subscribers (events logged only)
34
+ *
35
+ * Install `autotel-subscribers` package for ready-made subscribers
36
+ */
37
+ subscribers?: EventSubscriber[];
84
38
  }
85
39
  declare class Event {
86
- private serviceName;
87
- private logger?;
88
- private collector?;
89
- private subscribers;
90
- private hasSubscribers;
91
- private circuitBreakers;
92
- /**
93
- * Create a new Event instance
94
- *
95
- * **Note**: Most users should use `init()` + `track()` instead of creating Event instances directly.
96
- *
97
- * **Subscriber Resolution**:
98
- * - If `subscribers` provided in options → uses those (instance override)
99
- * - If `subscribers` not provided → falls back to subscribers from `init()` (global config)
100
- * - If neither → no subscribers (events logged only)
101
- *
102
- * @param serviceName - Service name for identifying events
103
- * @param options - Optional configuration (logger, collector, subscribers)
104
- *
105
- * @example Recommended: Use track() with init()
106
- * ```typescript
107
- * import { init, track } from 'autotel';
108
- * import { PostHogSubscriber } from 'autotel-subscribers/posthog';
109
- *
110
- * init({
111
- * service: 'checkout',
112
- * subscribers: [new PostHogSubscriber({ apiKey: 'phc_...' })]
113
- * });
114
- *
115
- * track('purchase.completed', { amount: 99.99 });
116
- * ```
117
- *
118
- * @example Inherit subscribers from init()
119
- * ```typescript
120
- * // Uses subscribers configured in init()
121
- * const event = new Event('checkout');
122
- * event.trackEvent('purchase.completed', { amount: 99.99 });
123
- * ```
124
- *
125
- * @example Override subscribers for this instance
126
- * ```typescript
127
- * import { Event } from 'autotel/event';
128
- * import { PostHogSubscriber } from 'autotel-subscribers/posthog';
129
- *
130
- * // Override: use different subscribers for this instance only
131
- * const event = new Event('checkout', {
132
- * subscribers: [new PostHogSubscriber({ apiKey: 'phc_different_project' })]
133
- * });
134
- * ```
135
- */
136
- constructor(serviceName: string, options?: EventsOptions);
137
- /**
138
- * Automatically enrich attributes with all available telemetry context
139
- *
140
- * Auto-captures:
141
- * - Resource attributes: service.version, deployment.environment
142
- * - Trace context: traceId, spanId, correlationId
143
- * - Operation context: operation.name
144
- */
145
- private enrichWithTelemetryContext;
146
- /**
147
- * Build autotel event context for trace correlation
148
- *
149
- * Works in 4 contexts:
150
- * 1. Inside a span → use current span's trace_id + span_id
151
- * 2. Outside span but in AsyncLocalStorage context → use trace_id + correlation_id
152
- * 3. Totally standalone → use correlation_id + service/env/version
153
- * 4. Batch/fan-in (multiple linked parents) → use count + hash or full array
154
- *
155
- * @returns AutotelEventContext or undefined if trace context is disabled
156
- */
157
- private buildAutotelContext;
158
- /**
159
- * Enrich event attributes from baggage with guardrails
160
- *
161
- * @param attributes - Current event attributes
162
- * @returns Enriched attributes with baggage values
163
- */
164
- private enrichFromBaggage;
165
- /**
166
- * Check if a baggage key is allowed based on config
167
- */
168
- private isBaggageKeyAllowed;
169
- /**
170
- * Check if a key matches a baggage pattern
171
- * Supports exact matches and wildcard patterns (e.g., 'tenant.*')
172
- */
173
- private matchesBaggagePattern;
174
- /**
175
- * Track a business event
176
- *
177
- * Use this for tracking user actions, business events, product usage:
178
- * - "user.signup"
179
- * - "order.completed"
180
- * - "feature.used"
181
- *
182
- * Events are sent to configured subscribers (PostHog, Mixpanel, etc.).
183
- *
184
- * @example
185
- * ```typescript
186
- * // Track user signup
187
- * events.trackEvent('user.signup', {
188
- * userId: '123',
189
- * plan: 'pro'
190
- * })
191
- *
192
- * // Track order
193
- * events.trackEvent('order.completed', {
194
- * orderId: 'ord_123',
195
- * amount: 99.99
196
- * })
197
- * ```
198
- */
199
- trackEvent(eventName: string, attributes?: EventAttributes): void;
200
- /**
201
- * Notify all subscribers concurrently without blocking
202
- * Uses circuit breakers to protect against failing subscribers
203
- * Uses Promise.allSettled to prevent subscriber errors from affecting other subscribers
204
- */
205
- private notifySubscribers;
206
- /**
207
- * Track conversion funnel steps
208
- *
209
- * Monitor where users drop off in multi-step processes.
210
- *
211
- * @example
212
- * ```typescript
213
- * // Track signup funnel
214
- * events.trackFunnelStep('signup', 'started', { userId: '123' })
215
- * events.trackFunnelStep('signup', 'email_verified', { userId: '123' })
216
- * events.trackFunnelStep('signup', 'completed', { userId: '123' })
217
- *
218
- * // Track checkout flow
219
- * events.trackFunnelStep('checkout', 'started', { cartValue: 99.99 })
220
- * events.trackFunnelStep('checkout', 'payment_info', { cartValue: 99.99 })
221
- * events.trackFunnelStep('checkout', 'completed', { cartValue: 99.99 })
222
- * ```
223
- */
224
- trackFunnelStep(funnelName: string, status: FunnelStatus, attributes?: EventAttributes): void;
225
- /**
226
- * Track outcomes (success/failure/partial)
227
- *
228
- * Monitor success rates of critical operations.
229
- *
230
- * @example
231
- * ```typescript
232
- * // Track email delivery
233
- * events.trackOutcome('email.delivery', 'success', {
234
- * recipientType: 'user',
235
- * emailType: 'welcome'
236
- * })
237
- *
238
- * events.trackOutcome('email.delivery', 'failure', {
239
- * recipientType: 'user',
240
- * errorCode: 'invalid_email'
241
- * })
242
- *
243
- * // Track payment processing
244
- * events.trackOutcome('payment.process', 'success', { amount: 99.99 })
245
- * events.trackOutcome('payment.process', 'failure', { error: 'insufficient_funds' })
246
- * ```
247
- */
248
- trackOutcome(operationName: string, status: OutcomeStatus, attributes?: EventAttributes): void;
249
- /**
250
- * Track value metrics
251
- *
252
- * Record numerical values like revenue, transaction amounts,
253
- * item counts, processing times, engagement scores, etc.
254
- *
255
- * @example
256
- * ```typescript
257
- * // Track revenue
258
- * events.trackValue('order.revenue', 149.99, {
259
- * currency: 'USD',
260
- * productCategory: 'electronics'
261
- * })
262
- *
263
- * // Track items per cart
264
- * events.trackValue('cart.item_count', 5, {
265
- * userId: '123'
266
- * })
267
- *
268
- * // Track processing time
269
- * events.trackValue('api.response_time', 250, {
270
- * unit: 'ms',
271
- * endpoint: '/api/checkout'
272
- * })
273
- * ```
274
- */
275
- trackValue(metricName: string, value: number, attributes?: EventAttributes): void;
276
- /**
277
- * Flush all subscribers and wait for pending events
278
- *
279
- * Call this before shutdown to ensure all events are delivered.
280
- *
281
- * @example
282
- * ```typescript
283
- * const event =new Event('app', { subscribers: [...] });
284
- *
285
- * // Before shutdown
286
- * await events.flush();
287
- * ```
288
- */
289
- flush(): Promise<void>;
290
- /**
291
- * Shutdown the Event instance and all subscribers
292
- *
293
- * Unlike `flush()`, this method:
294
- * - Shuts down all subscribers
295
- * - Prevents further event tracking (hasSubscribers becomes false)
296
- * - Should only be called once at application shutdown
297
- *
298
- * @example
299
- * ```typescript
300
- * // In Next.js API route with after()
301
- * import { after } from 'next/server';
302
- *
303
- * export async function POST(req: Request) {
304
- * const event = new Event('checkout', { subscribers: [...] });
305
- * event.trackEvent('order.completed', { orderId: '123' });
306
- *
307
- * after(async () => {
308
- * await event.shutdown();
309
- * });
310
- *
311
- * return Response.json({ success: true });
312
- * }
313
- * ```
314
- */
315
- shutdown(): Promise<void>;
316
- /**
317
- * Track funnel progression with custom step names
318
- *
319
- * Unlike trackFunnelStep which uses FunnelStatus enum values,
320
- * this method allows any string as the step name for flexible funnel tracking.
321
- *
322
- * @param funnelName - Name of the funnel (e.g., "checkout", "onboarding")
323
- * @param stepName - Custom step name (e.g., "cart_viewed", "payment_entered")
324
- * @param stepNumber - Optional numeric position in the funnel
325
- * @param attributes - Optional event attributes
326
- *
327
- * @example
328
- * ```typescript
329
- * // Track custom checkout steps
330
- * event.trackFunnelProgression('checkout', 'cart_viewed', 1);
331
- * event.trackFunnelProgression('checkout', 'shipping_selected', 2);
332
- * event.trackFunnelProgression('checkout', 'payment_entered', 3);
333
- * event.trackFunnelProgression('checkout', 'order_confirmed', 4);
334
- * ```
335
- */
336
- trackFunnelProgression(funnelName: string, stepName: string, stepNumber?: number, attributes?: EventAttributes): void;
337
- /**
338
- * Track multiple events in a batch
339
- *
340
- * Useful for bulk event tracking with consistent timestamps.
341
- * Events are sent to subscribers individually but processed together.
342
- *
343
- * @param events - Array of events to track
344
- *
345
- * @example
346
- * ```typescript
347
- * event.trackBatch([
348
- * { name: 'item.viewed', attributes: { itemId: '1' } },
349
- * { name: 'item.viewed', attributes: { itemId: '2' } },
350
- * { name: 'cart.updated', attributes: { itemCount: 2 } },
351
- * ]);
352
- * ```
353
- */
354
- trackBatch(events: Array<{
355
- name: string;
356
- attributes?: EventAttributesInput;
357
- }>): void;
40
+ private serviceName;
41
+ private logger?;
42
+ private collector?;
43
+ private subscribers;
44
+ private hasSubscribers;
45
+ private circuitBreakers;
46
+ /**
47
+ * Create a new Event instance
48
+ *
49
+ * **Note**: Most users should use `init()` + `track()` instead of creating Event instances directly.
50
+ *
51
+ * **Subscriber Resolution**:
52
+ * - If `subscribers` provided in options → uses those (instance override)
53
+ * - If `subscribers` not provided → falls back to subscribers from `init()` (global config)
54
+ * - If neither → no subscribers (events logged only)
55
+ *
56
+ * @param serviceName - Service name for identifying events
57
+ * @param options - Optional configuration (logger, collector, subscribers)
58
+ *
59
+ * @example Recommended: Use track() with init()
60
+ * ```typescript
61
+ * import { init, track } from 'autotel';
62
+ * import { PostHogSubscriber } from 'autotel-subscribers/posthog';
63
+ *
64
+ * init({
65
+ * service: 'checkout',
66
+ * subscribers: [new PostHogSubscriber({ apiKey: 'phc_...' })]
67
+ * });
68
+ *
69
+ * track('purchase.completed', { amount: 99.99 });
70
+ * ```
71
+ *
72
+ * @example Inherit subscribers from init()
73
+ * ```typescript
74
+ * // Uses subscribers configured in init()
75
+ * const event = new Event('checkout');
76
+ * event.trackEvent('purchase.completed', { amount: 99.99 });
77
+ * ```
78
+ *
79
+ * @example Override subscribers for this instance
80
+ * ```typescript
81
+ * import { Event } from 'autotel/event';
82
+ * import { PostHogSubscriber } from 'autotel-subscribers/posthog';
83
+ *
84
+ * // Override: use different subscribers for this instance only
85
+ * const event = new Event('checkout', {
86
+ * subscribers: [new PostHogSubscriber({ apiKey: 'phc_different_project' })]
87
+ * });
88
+ * ```
89
+ */
90
+ constructor(serviceName: string, options?: EventsOptions);
91
+ /**
92
+ * Automatically enrich attributes with all available telemetry context
93
+ *
94
+ * Auto-captures:
95
+ * - Resource attributes: service.version, deployment.environment
96
+ * - Trace context: traceId, spanId, correlationId
97
+ * - Operation context: operation.name
98
+ */
99
+ private enrichWithTelemetryContext;
100
+ /**
101
+ * Build autotel event context for trace correlation
102
+ *
103
+ * Works in 4 contexts:
104
+ * 1. Inside a span → use current span's trace_id + span_id
105
+ * 2. Outside span but in AsyncLocalStorage context → use trace_id + correlation_id
106
+ * 3. Totally standalone → use correlation_id + service/env/version
107
+ * 4. Batch/fan-in (multiple linked parents) → use count + hash or full array
108
+ *
109
+ * @returns AutotelEventContext or undefined if trace context is disabled
110
+ */
111
+ private buildAutotelContext;
112
+ /**
113
+ * Enrich event attributes from baggage with guardrails
114
+ *
115
+ * @param attributes - Current event attributes
116
+ * @returns Enriched attributes with baggage values
117
+ */
118
+ private enrichFromBaggage;
119
+ /**
120
+ * Check if a baggage key is allowed based on config
121
+ */
122
+ private isBaggageKeyAllowed;
123
+ /**
124
+ * Check if a key matches a baggage pattern
125
+ * Supports exact matches and wildcard patterns (e.g., 'tenant.*')
126
+ */
127
+ private matchesBaggagePattern;
128
+ /**
129
+ * Track a business event
130
+ *
131
+ * Use this for tracking user actions, business events, product usage:
132
+ * - "user.signup"
133
+ * - "order.completed"
134
+ * - "feature.used"
135
+ *
136
+ * Events are sent to configured subscribers (PostHog, Mixpanel, etc.).
137
+ *
138
+ * @example
139
+ * ```typescript
140
+ * // Track user signup
141
+ * events.trackEvent('user.signup', {
142
+ * userId: '123',
143
+ * plan: 'pro'
144
+ * })
145
+ *
146
+ * // Track order
147
+ * events.trackEvent('order.completed', {
148
+ * orderId: 'ord_123',
149
+ * amount: 99.99
150
+ * })
151
+ * ```
152
+ */
153
+ trackEvent(eventName: string, attributes?: EventAttributes): void;
154
+ /**
155
+ * Notify all subscribers concurrently without blocking
156
+ * Uses circuit breakers to protect against failing subscribers
157
+ * Uses Promise.allSettled to prevent subscriber errors from affecting other subscribers
158
+ */
159
+ private notifySubscribers;
160
+ /**
161
+ * Track conversion funnel steps
162
+ *
163
+ * Monitor where users drop off in multi-step processes.
164
+ *
165
+ * @example
166
+ * ```typescript
167
+ * // Track signup funnel
168
+ * events.trackFunnelStep('signup', 'started', { userId: '123' })
169
+ * events.trackFunnelStep('signup', 'email_verified', { userId: '123' })
170
+ * events.trackFunnelStep('signup', 'completed', { userId: '123' })
171
+ *
172
+ * // Track checkout flow
173
+ * events.trackFunnelStep('checkout', 'started', { cartValue: 99.99 })
174
+ * events.trackFunnelStep('checkout', 'payment_info', { cartValue: 99.99 })
175
+ * events.trackFunnelStep('checkout', 'completed', { cartValue: 99.99 })
176
+ * ```
177
+ */
178
+ trackFunnelStep(funnelName: string, status: FunnelStatus, attributes?: EventAttributes): void;
179
+ /**
180
+ * Track outcomes (success/failure/partial)
181
+ *
182
+ * Monitor success rates of critical operations.
183
+ *
184
+ * @example
185
+ * ```typescript
186
+ * // Track email delivery
187
+ * events.trackOutcome('email.delivery', 'success', {
188
+ * recipientType: 'user',
189
+ * emailType: 'welcome'
190
+ * })
191
+ *
192
+ * events.trackOutcome('email.delivery', 'failure', {
193
+ * recipientType: 'user',
194
+ * errorCode: 'invalid_email'
195
+ * })
196
+ *
197
+ * // Track payment processing
198
+ * events.trackOutcome('payment.process', 'success', { amount: 99.99 })
199
+ * events.trackOutcome('payment.process', 'failure', { error: 'insufficient_funds' })
200
+ * ```
201
+ */
202
+ trackOutcome(operationName: string, status: OutcomeStatus, attributes?: EventAttributes): void;
203
+ /**
204
+ * Track value metrics
205
+ *
206
+ * Record numerical values like revenue, transaction amounts,
207
+ * item counts, processing times, engagement scores, etc.
208
+ *
209
+ * @example
210
+ * ```typescript
211
+ * // Track revenue
212
+ * events.trackValue('order.revenue', 149.99, {
213
+ * currency: 'USD',
214
+ * productCategory: 'electronics'
215
+ * })
216
+ *
217
+ * // Track items per cart
218
+ * events.trackValue('cart.item_count', 5, {
219
+ * userId: '123'
220
+ * })
221
+ *
222
+ * // Track processing time
223
+ * events.trackValue('api.response_time', 250, {
224
+ * unit: 'ms',
225
+ * endpoint: '/api/checkout'
226
+ * })
227
+ * ```
228
+ */
229
+ trackValue(metricName: string, value: number, attributes?: EventAttributes): void;
230
+ /**
231
+ * Flush all subscribers and wait for pending events
232
+ *
233
+ * Call this before shutdown to ensure all events are delivered.
234
+ *
235
+ * @example
236
+ * ```typescript
237
+ * const event =new Event('app', { subscribers: [...] });
238
+ *
239
+ * // Before shutdown
240
+ * await events.flush();
241
+ * ```
242
+ */
243
+ flush(): Promise<void>;
244
+ /**
245
+ * Shutdown the Event instance and all subscribers
246
+ *
247
+ * Unlike `flush()`, this method:
248
+ * - Shuts down all subscribers
249
+ * - Prevents further event tracking (hasSubscribers becomes false)
250
+ * - Should only be called once at application shutdown
251
+ *
252
+ * @example
253
+ * ```typescript
254
+ * // In Next.js API route with after()
255
+ * import { after } from 'next/server';
256
+ *
257
+ * export async function POST(req: Request) {
258
+ * const event = new Event('checkout', { subscribers: [...] });
259
+ * event.trackEvent('order.completed', { orderId: '123' });
260
+ *
261
+ * after(async () => {
262
+ * await event.shutdown();
263
+ * });
264
+ *
265
+ * return Response.json({ success: true });
266
+ * }
267
+ * ```
268
+ */
269
+ shutdown(): Promise<void>;
270
+ /**
271
+ * Track funnel progression with custom step names
272
+ *
273
+ * Unlike trackFunnelStep which uses FunnelStatus enum values,
274
+ * this method allows any string as the step name for flexible funnel tracking.
275
+ *
276
+ * @param funnelName - Name of the funnel (e.g., "checkout", "onboarding")
277
+ * @param stepName - Custom step name (e.g., "cart_viewed", "payment_entered")
278
+ * @param stepNumber - Optional numeric position in the funnel
279
+ * @param attributes - Optional event attributes
280
+ *
281
+ * @example
282
+ * ```typescript
283
+ * // Track custom checkout steps
284
+ * event.trackFunnelProgression('checkout', 'cart_viewed', 1);
285
+ * event.trackFunnelProgression('checkout', 'shipping_selected', 2);
286
+ * event.trackFunnelProgression('checkout', 'payment_entered', 3);
287
+ * event.trackFunnelProgression('checkout', 'order_confirmed', 4);
288
+ * ```
289
+ */
290
+ trackFunnelProgression(funnelName: string, stepName: string, stepNumber?: number, attributes?: EventAttributes): void;
291
+ /**
292
+ * Track multiple events in a batch
293
+ *
294
+ * Useful for bulk event tracking with consistent timestamps.
295
+ * Events are sent to subscribers individually but processed together.
296
+ *
297
+ * @param events - Array of events to track
298
+ *
299
+ * @example
300
+ * ```typescript
301
+ * event.trackBatch([
302
+ * { name: 'item.viewed', attributes: { itemId: '1' } },
303
+ * { name: 'item.viewed', attributes: { itemId: '2' } },
304
+ * { name: 'cart.updated', attributes: { itemCount: 2 } },
305
+ * ]);
306
+ * ```
307
+ */
308
+ trackBatch(events: Array<{
309
+ name: string;
310
+ attributes?: EventAttributesInput;
311
+ }>): void;
358
312
  }
359
313
  /**
360
314
  * Get or create an Events instance for a service
@@ -374,5 +328,6 @@ declare function getEvents(serviceName: string, logger?: Logger): Event;
374
328
  * Reset all events instances (mainly for testing)
375
329
  */
376
330
  declare function resetEvents(): void;
377
-
378
- export { Event, EventAttributes, EventAttributesInput, type EventsOptions, FunnelStatus, OutcomeStatus, getEvents, resetEvents };
331
+ //#endregion
332
+ export { Event, type EventAttributes, type EventAttributesInput, EventsOptions, type FunnelStatus, type OutcomeStatus, getEvents, resetEvents };
333
+ //# sourceMappingURL=event.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event.d.cts","names":[],"sources":["../src/event.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;UAgGiB,aAAA;EAuiBb;EAriBF,MAAA,GAAS,MAAA;EAsiBP;EApiBF,SAAA,GAAY,cAAA;EAqiBV;;;;;;;;;;;EAzhBF,WAAA,GAAc,eAAA;AAAA;AAAA,cAGH,KAAA;EAAA,QACH,WAAA;EAAA,QACA,MAAA;EAAA,QACA,SAAA;EAAA,QACA,WAAA;EAAA,QACA,cAAA;EAAA,QACA,eAAA;EAkzBqC;;;AAAuB;AAoCtE;;;;;;;;;AAAsE;AAUtE;;;;AAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;cAlzBb,WAAA,UAAqB,OAAA,GAAS,aAAA;;;;;;;;;UAsClC,0BAAA;;;;;;;;;;;;UAiDA,mBAAA;;;;;;;UA4FA,iBAAA;;;;UAsEA,mBAAA;;;;;UA2BA,qBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;EAiCR,UAAA,CAAW,SAAA,UAAmB,UAAA,GAAa,eAAA;;;;;;UAoD7B,iBAAA;;;;;;;;;;;;;;;;;;;EAwDd,eAAA,CACE,UAAA,UACA,MAAA,EAAQ,YAAA,EACR,UAAA,GAAa,eAAA;;;;;;;;;;;;;;;;;;;;;;;;EA2Df,YAAA,CACE,aAAA,UACA,MAAA,EAAQ,aAAA,EACR,UAAA,GAAa,eAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8Df,UAAA,CACE,UAAA,UACA,KAAA,UACA,UAAA,GAAa,eAAA;;;;;;;;;;;;;;EAoDT,KAAA,IAAS,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;EA+CT,QAAA,IAAY,OAAA;;;;;;;;;;;;;;;;;;;;;EA6ClB,sBAAA,CACE,UAAA,UACA,QAAA,UACA,UAAA,WACA,UAAA,GAAa,eAAA;;;;;;;;;;;;;;;;;;EA4Ef,UAAA,CACE,MAAA,EAAQ,KAAA;IAAQ,IAAA;IAAc,UAAA,GAAa,oBAAA;EAAA;AAAA;;;;;;;;;;;;;;iBAoC/B,SAAA,CAAU,WAAA,UAAqB,MAAA,GAAS,MAAA,GAAS,KAAK;;;;iBAUtD,WAAA"}