@pipedog/core 0.0.0 → 0.2.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 (736) hide show
  1. package/LICENSE +25 -0
  2. package/NOTICE +9 -0
  3. package/dist/adapters/base_llm_adapter.d.ts +266 -0
  4. package/dist/adapters/base_llm_adapter.js +489 -0
  5. package/dist/adapters/index.d.ts +2 -0
  6. package/dist/adapters/index.js +8 -0
  7. package/dist/adapters/schemas/direct_function.d.ts +202 -0
  8. package/dist/adapters/schemas/direct_function.js +302 -0
  9. package/dist/adapters/schemas/function_schema.d.ts +67 -0
  10. package/dist/adapters/schemas/function_schema.js +72 -0
  11. package/dist/adapters/schemas/index.d.ts +2 -0
  12. package/dist/adapters/schemas/index.js +8 -0
  13. package/dist/adapters/schemas/tools_schema.d.ts +57 -0
  14. package/dist/adapters/schemas/tools_schema.js +79 -0
  15. package/dist/adapters/services/index.d.ts +2 -0
  16. package/dist/adapters/services/index.js +8 -0
  17. package/dist/adapters/services/open_ai_adapter.d.ts +147 -0
  18. package/dist/adapters/services/open_ai_adapter.js +250 -0
  19. package/dist/audio/dtmf/dtmf_data.d.ts +3 -0
  20. package/dist/audio/dtmf/dtmf_data.js +22 -0
  21. package/dist/audio/dtmf/index.d.ts +2 -0
  22. package/dist/audio/dtmf/index.js +8 -0
  23. package/dist/audio/dtmf/types.d.ts +31 -0
  24. package/dist/audio/dtmf/types.js +35 -0
  25. package/dist/audio/dtmf/utils.d.ts +13 -0
  26. package/dist/audio/dtmf/utils.js +62 -0
  27. package/dist/audio/filters/base_audio_filter.d.ts +51 -0
  28. package/dist/audio/filters/base_audio_filter.js +17 -0
  29. package/dist/audio/filters/index.d.ts +2 -0
  30. package/dist/audio/filters/index.js +8 -0
  31. package/dist/audio/index.d.ts +2 -0
  32. package/dist/audio/index.js +8 -0
  33. package/dist/audio/krisp_instance.d.ts +95 -0
  34. package/dist/audio/krisp_instance.js +229 -0
  35. package/dist/audio/mixers/base_audio_mixer.d.ts +56 -0
  36. package/dist/audio/mixers/base_audio_mixer.js +16 -0
  37. package/dist/audio/mixers/index.d.ts +2 -0
  38. package/dist/audio/mixers/index.js +8 -0
  39. package/dist/audio/resamplers/base_audio_resampler.d.ts +46 -0
  40. package/dist/audio/resamplers/base_audio_resampler.js +35 -0
  41. package/dist/audio/resamplers/engine.d.ts +60 -0
  42. package/dist/audio/resamplers/engine.js +89 -0
  43. package/dist/audio/resamplers/index.d.ts +2 -0
  44. package/dist/audio/resamplers/index.js +8 -0
  45. package/dist/audio/resamplers/resampy_resampler.d.ts +10 -0
  46. package/dist/audio/resamplers/resampy_resampler.js +15 -0
  47. package/dist/audio/resamplers/sinc_engine.d.ts +10 -0
  48. package/dist/audio/resamplers/sinc_engine.js +235 -0
  49. package/dist/audio/resamplers/soxr_resampler.d.ts +58 -0
  50. package/dist/audio/resamplers/soxr_resampler.js +79 -0
  51. package/dist/audio/resamplers/soxr_stream_resampler.d.ts +78 -0
  52. package/dist/audio/resamplers/soxr_stream_resampler.js +159 -0
  53. package/dist/audio/turn/base_turn_analyzer.d.ts +84 -0
  54. package/dist/audio/turn/base_turn_analyzer.js +61 -0
  55. package/dist/audio/turn/index.d.ts +2 -0
  56. package/dist/audio/turn/index.js +8 -0
  57. package/dist/audio/turn/smart_turn/_whisper_features.d.ts +30 -0
  58. package/dist/audio/turn/smart_turn/_whisper_features.js +225 -0
  59. package/dist/audio/turn/smart_turn/base_smart_turn.d.ts +94 -0
  60. package/dist/audio/turn/smart_turn/base_smart_turn.js +239 -0
  61. package/dist/audio/turn/smart_turn/local_smart_turn_v3.d.ts +76 -0
  62. package/dist/audio/turn/smart_turn/local_smart_turn_v3.js +151 -0
  63. package/dist/audio/utils.d.ts +224 -0
  64. package/dist/audio/utils.js +634 -0
  65. package/dist/audio/vad/data/index.d.ts +2 -0
  66. package/dist/audio/vad/data/index.js +8 -0
  67. package/dist/audio/vad/index.d.ts +2 -0
  68. package/dist/audio/vad/index.js +8 -0
  69. package/dist/audio/vad/vad_analyzer.d.ts +134 -0
  70. package/dist/audio/vad/vad_analyzer.js +249 -0
  71. package/dist/audio/vad/vad_controller.d.ts +143 -0
  72. package/dist/audio/vad/vad_controller.js +228 -0
  73. package/dist/audio/volume.d.ts +38 -0
  74. package/dist/audio/volume.js +75 -0
  75. package/dist/bus/adapters/base.d.ts +35 -0
  76. package/dist/bus/adapters/base.js +19 -0
  77. package/dist/bus/adapters/index.d.ts +10 -0
  78. package/dist/bus/adapters/index.js +15 -0
  79. package/dist/bus/adapters/llm_context_adapter.d.ts +36 -0
  80. package/dist/bus/adapters/llm_context_adapter.js +82 -0
  81. package/dist/bus/adapters/tools_schema_adapter.d.ts +25 -0
  82. package/dist/bus/adapters/tools_schema_adapter.js +70 -0
  83. package/dist/bus/bridge_processor.d.ts +111 -0
  84. package/dist/bus/bridge_processor.js +166 -0
  85. package/dist/bus/bus.d.ts +110 -0
  86. package/dist/bus/bus.js +200 -0
  87. package/dist/bus/index.d.ts +22 -0
  88. package/dist/bus/index.js +27 -0
  89. package/dist/bus/local/async_queue.d.ts +12 -0
  90. package/dist/bus/local/async_queue.js +21 -0
  91. package/dist/bus/local/index.d.ts +3 -0
  92. package/dist/bus/local/index.js +8 -0
  93. package/dist/bus/messages.d.ts +378 -0
  94. package/dist/bus/messages.js +357 -0
  95. package/dist/bus/network/index.d.ts +16 -0
  96. package/dist/bus/network/index.js +21 -0
  97. package/dist/bus/queue.d.ts +27 -0
  98. package/dist/bus/queue.js +51 -0
  99. package/dist/bus/serializers/base.d.ts +25 -0
  100. package/dist/bus/serializers/base.js +14 -0
  101. package/dist/bus/serializers/index.d.ts +9 -0
  102. package/dist/bus/serializers/index.js +14 -0
  103. package/dist/bus/serializers/json.d.ts +77 -0
  104. package/dist/bus/serializers/json.js +367 -0
  105. package/dist/bus/subscriber.d.ts +46 -0
  106. package/dist/bus/subscriber.js +27 -0
  107. package/dist/bus/ui/index.d.ts +3 -0
  108. package/dist/bus/ui/index.js +8 -0
  109. package/dist/bus/ui/messages.d.ts +186 -0
  110. package/dist/bus/ui/messages.js +171 -0
  111. package/dist/classifiers/base_classifier.d.ts +263 -0
  112. package/dist/classifiers/base_classifier.js +346 -0
  113. package/dist/classifiers/cloudflare/clef/classifier.d.ts +70 -0
  114. package/dist/classifiers/cloudflare/clef/classifier.js +204 -0
  115. package/dist/classifiers/cloudflare/clef/client.d.ts +104 -0
  116. package/dist/classifiers/cloudflare/clef/client.js +234 -0
  117. package/dist/classifiers/cloudflare/clef/index.d.ts +2 -0
  118. package/dist/classifiers/cloudflare/clef/index.js +8 -0
  119. package/dist/classifiers/cloudflare/index.d.ts +2 -0
  120. package/dist/classifiers/cloudflare/index.js +8 -0
  121. package/dist/classifiers/http_client.d.ts +70 -0
  122. package/dist/classifiers/http_client.js +161 -0
  123. package/dist/classifiers/index.d.ts +2 -0
  124. package/dist/classifiers/index.js +8 -0
  125. package/dist/classifiers/jev/classifier.d.ts +8 -0
  126. package/dist/classifiers/jev/classifier.js +13 -0
  127. package/dist/classifiers/jev/client.d.ts +8 -0
  128. package/dist/classifiers/jev/client.js +13 -0
  129. package/dist/classifiers/jev/index.d.ts +2 -0
  130. package/dist/classifiers/jev/index.js +8 -0
  131. package/dist/classifiers/llm/classifier.d.ts +72 -0
  132. package/dist/classifiers/llm/classifier.js +304 -0
  133. package/dist/classifiers/llm/index.d.ts +2 -0
  134. package/dist/classifiers/llm/index.js +8 -0
  135. package/dist/classifiers/openai/decisions/classifier.d.ts +77 -0
  136. package/dist/classifiers/openai/decisions/classifier.js +241 -0
  137. package/dist/classifiers/openai/decisions/client.d.ts +108 -0
  138. package/dist/classifiers/openai/decisions/client.js +234 -0
  139. package/dist/classifiers/openai/decisions/index.d.ts +2 -0
  140. package/dist/classifiers/openai/decisions/index.js +8 -0
  141. package/dist/classifiers/openai/index.d.ts +2 -0
  142. package/dist/classifiers/openai/index.js +8 -0
  143. package/dist/classifiers/typesafe/index.d.ts +2 -0
  144. package/dist/classifiers/typesafe/index.js +8 -0
  145. package/dist/classifiers/typesafe/jev/classifier.d.ts +70 -0
  146. package/dist/classifiers/typesafe/jev/classifier.js +220 -0
  147. package/dist/classifiers/typesafe/jev/client.d.ts +105 -0
  148. package/dist/classifiers/typesafe/jev/client.js +233 -0
  149. package/dist/classifiers/typesafe/jev/index.d.ts +2 -0
  150. package/dist/classifiers/typesafe/jev/index.js +8 -0
  151. package/dist/clocks/base_clock.d.ts +13 -0
  152. package/dist/clocks/base_clock.js +14 -0
  153. package/dist/clocks/index.d.ts +2 -0
  154. package/dist/clocks/index.js +8 -0
  155. package/dist/clocks/system_clock.d.ts +15 -0
  156. package/dist/clocks/system_clock.js +25 -0
  157. package/dist/frames/frames.d.ts +2533 -0
  158. package/dist/frames/frames.js +2485 -0
  159. package/dist/frames/index.d.ts +2 -0
  160. package/dist/frames/index.js +8 -0
  161. package/dist/frames/protobufs/frames_pb2.d.ts +229 -0
  162. package/dist/frames/protobufs/frames_pb2.js +466 -0
  163. package/dist/index.d.ts +11 -0
  164. package/dist/index.js +56 -0
  165. package/dist/metrics/index.d.ts +2 -0
  166. package/dist/metrics/index.js +8 -0
  167. package/dist/metrics/metrics.d.ts +276 -0
  168. package/dist/metrics/metrics.js +254 -0
  169. package/dist/observers/base_observer.d.ts +173 -0
  170. package/dist/observers/base_observer.js +151 -0
  171. package/dist/observers/error_observer.d.ts +75 -0
  172. package/dist/observers/error_observer.js +87 -0
  173. package/dist/observers/function_call_observer.d.ts +157 -0
  174. package/dist/observers/function_call_observer.js +222 -0
  175. package/dist/observers/index.d.ts +2 -0
  176. package/dist/observers/index.js +8 -0
  177. package/dist/observers/loggers/debug_log_observer.d.ts +91 -0
  178. package/dist/observers/loggers/debug_log_observer.js +228 -0
  179. package/dist/observers/loggers/index.d.ts +2 -0
  180. package/dist/observers/loggers/index.js +8 -0
  181. package/dist/observers/loggers/llm_log_observer.d.ts +24 -0
  182. package/dist/observers/loggers/llm_log_observer.js +110 -0
  183. package/dist/observers/loggers/metrics_log_observer.d.ts +85 -0
  184. package/dist/observers/loggers/metrics_log_observer.js +186 -0
  185. package/dist/observers/loggers/transcription_log_observer.d.ts +23 -0
  186. package/dist/observers/loggers/transcription_log_observer.js +74 -0
  187. package/dist/observers/service_metrics_observer.d.ts +168 -0
  188. package/dist/observers/service_metrics_observer.js +236 -0
  189. package/dist/observers/speaking_observer.d.ts +104 -0
  190. package/dist/observers/speaking_observer.js +150 -0
  191. package/dist/observers/startup_timing_observer.d.ts +221 -0
  192. package/dist/observers/startup_timing_observer.js +365 -0
  193. package/dist/observers/turn_tracking_observer.d.ts +78 -0
  194. package/dist/observers/turn_tracking_observer.js +189 -0
  195. package/dist/observers/user_bot_latency_observer.d.ts +411 -0
  196. package/dist/observers/user_bot_latency_observer.js +974 -0
  197. package/dist/pipeline/base_pipeline.d.ts +49 -0
  198. package/dist/pipeline/base_pipeline.js +101 -0
  199. package/dist/pipeline/capabilities.d.ts +76 -0
  200. package/dist/pipeline/capabilities.js +97 -0
  201. package/dist/pipeline/index.d.ts +2 -0
  202. package/dist/pipeline/index.js +8 -0
  203. package/dist/pipeline/job_context.d.ts +317 -0
  204. package/dist/pipeline/job_context.js +450 -0
  205. package/dist/pipeline/job_decorator.d.ts +54 -0
  206. package/dist/pipeline/job_decorator.js +92 -0
  207. package/dist/pipeline/llm_switcher.d.ts +84 -0
  208. package/dist/pipeline/llm_switcher.js +107 -0
  209. package/dist/pipeline/llm_with_backend.d.ts +435 -0
  210. package/dist/pipeline/llm_with_backend.js +806 -0
  211. package/dist/pipeline/parallel_pipeline.d.ts +83 -0
  212. package/dist/pipeline/parallel_pipeline.js +200 -0
  213. package/dist/pipeline/pipeline.d.ts +126 -0
  214. package/dist/pipeline/pipeline.js +196 -0
  215. package/dist/pipeline/service_switcher.d.ts +287 -0
  216. package/dist/pipeline/service_switcher.js +509 -0
  217. package/dist/pipeline/sync_parallel_pipeline.d.ts +192 -0
  218. package/dist/pipeline/sync_parallel_pipeline.js +387 -0
  219. package/dist/pipeline/worker.d.ts +821 -0
  220. package/dist/pipeline/worker.js +1656 -0
  221. package/dist/pipeline/worker_observer.d.ts +131 -0
  222. package/dist/pipeline/worker_observer.js +274 -0
  223. package/dist/pipeline/worker_ready_decorator.d.ts +45 -0
  224. package/dist/pipeline/worker_ready_decorator.js +76 -0
  225. package/dist/processors/aggregators/async_tool_messages.d.ts +146 -0
  226. package/dist/processors/aggregators/async_tool_messages.js +291 -0
  227. package/dist/processors/aggregators/dtmf_aggregator.d.ts +61 -0
  228. package/dist/processors/aggregators/dtmf_aggregator.js +144 -0
  229. package/dist/processors/aggregators/gated.d.ts +43 -0
  230. package/dist/processors/aggregators/gated.js +86 -0
  231. package/dist/processors/aggregators/gated_llm_context.d.ts +42 -0
  232. package/dist/processors/aggregators/gated_llm_context.js +86 -0
  233. package/dist/processors/aggregators/index.d.ts +2 -0
  234. package/dist/processors/aggregators/index.js +8 -0
  235. package/dist/processors/aggregators/llm_context.d.ts +370 -0
  236. package/dist/processors/aggregators/llm_context.js +580 -0
  237. package/dist/processors/aggregators/llm_context_summarizer.d.ts +219 -0
  238. package/dist/processors/aggregators/llm_context_summarizer.js +447 -0
  239. package/dist/processors/aggregators/llm_response.d.ts +37 -0
  240. package/dist/processors/aggregators/llm_response.js +71 -0
  241. package/dist/processors/aggregators/llm_response_universal.d.ts +966 -0
  242. package/dist/processors/aggregators/llm_response_universal.js +2394 -0
  243. package/dist/processors/aggregators/llm_text_processor.d.ts +53 -0
  244. package/dist/processors/aggregators/llm_text_processor.js +102 -0
  245. package/dist/processors/aggregators/sentence.d.ts +39 -0
  246. package/dist/processors/aggregators/sentence.js +69 -0
  247. package/dist/processors/async_generator.d.ts +42 -0
  248. package/dist/processors/async_generator.js +76 -0
  249. package/dist/processors/audio/audio_buffer_processor.d.ts +241 -0
  250. package/dist/processors/audio/audio_buffer_processor.js +565 -0
  251. package/dist/processors/audio/index.d.ts +2 -0
  252. package/dist/processors/audio/index.js +8 -0
  253. package/dist/processors/audio/vad_processor.d.ts +67 -0
  254. package/dist/processors/audio/vad_processor.js +103 -0
  255. package/dist/processors/consumer_processor.d.ts +49 -0
  256. package/dist/processors/consumer_processor.js +85 -0
  257. package/dist/processors/filters/frame_filter.d.ts +39 -0
  258. package/dist/processors/filters/frame_filter.js +52 -0
  259. package/dist/processors/filters/function_filter.d.ts +59 -0
  260. package/dist/processors/filters/function_filter.js +78 -0
  261. package/dist/processors/filters/identity_filter.d.ts +33 -0
  262. package/dist/processors/filters/identity_filter.js +37 -0
  263. package/dist/processors/filters/index.d.ts +2 -0
  264. package/dist/processors/filters/index.js +8 -0
  265. package/dist/processors/filters/null_filter.d.ts +34 -0
  266. package/dist/processors/filters/null_filter.js +47 -0
  267. package/dist/processors/filters/wake_notifier_filter.d.ts +48 -0
  268. package/dist/processors/filters/wake_notifier_filter.js +49 -0
  269. package/dist/processors/frame_processor.d.ts +360 -0
  270. package/dist/processors/frame_processor.js +932 -0
  271. package/dist/processors/frameworks/index.d.ts +2 -0
  272. package/dist/processors/frameworks/index.js +8 -0
  273. package/dist/processors/frameworks/rtvi/frames.d.ts +241 -0
  274. package/dist/processors/frameworks/rtvi/frames.js +259 -0
  275. package/dist/processors/frameworks/rtvi/index.d.ts +6 -0
  276. package/dist/processors/frameworks/rtvi/index.js +11 -0
  277. package/dist/processors/frameworks/rtvi/models.d.ts +1741 -0
  278. package/dist/processors/frameworks/rtvi/models.js +1807 -0
  279. package/dist/processors/frameworks/rtvi/observer.d.ts +340 -0
  280. package/dist/processors/frameworks/rtvi/observer.js +1113 -0
  281. package/dist/processors/frameworks/rtvi/processor.d.ts +182 -0
  282. package/dist/processors/frameworks/rtvi/processor.js +676 -0
  283. package/dist/processors/idle_frame_processor.d.ts +44 -0
  284. package/dist/processors/idle_frame_processor.js +86 -0
  285. package/dist/processors/index.d.ts +2 -0
  286. package/dist/processors/index.js +8 -0
  287. package/dist/processors/logger.d.ts +42 -0
  288. package/dist/processors/logger.js +87 -0
  289. package/dist/processors/metrics/frame_processor_metrics.d.ts +172 -0
  290. package/dist/processors/metrics/frame_processor_metrics.js +372 -0
  291. package/dist/processors/metrics/index.d.ts +2 -0
  292. package/dist/processors/metrics/index.js +8 -0
  293. package/dist/processors/producer_processor.d.ts +68 -0
  294. package/dist/processors/producer_processor.js +78 -0
  295. package/dist/processors/text_transformer.d.ts +30 -0
  296. package/dist/processors/text_transformer.js +48 -0
  297. package/dist/registry/index.d.ts +3 -0
  298. package/dist/registry/index.js +8 -0
  299. package/dist/registry/registry.d.ts +69 -0
  300. package/dist/registry/registry.js +149 -0
  301. package/dist/registry/types.d.ts +47 -0
  302. package/dist/registry/types.js +39 -0
  303. package/dist/serializers/base_serializer.d.ts +94 -0
  304. package/dist/serializers/base_serializer.js +82 -0
  305. package/dist/serializers/index.d.ts +2 -0
  306. package/dist/serializers/index.js +8 -0
  307. package/dist/services/ai_service.d.ts +145 -0
  308. package/dist/services/ai_service.js +262 -0
  309. package/dist/services/anthropic/index.d.ts +2 -0
  310. package/dist/services/anthropic/index.js +7 -0
  311. package/dist/services/assemblyai/index.d.ts +2 -0
  312. package/dist/services/assemblyai/index.js +7 -0
  313. package/dist/services/asyncai/index.d.ts +2 -0
  314. package/dist/services/asyncai/index.js +7 -0
  315. package/dist/services/aws/index.d.ts +2 -0
  316. package/dist/services/aws/index.js +7 -0
  317. package/dist/services/azure/index.d.ts +2 -0
  318. package/dist/services/azure/index.js +7 -0
  319. package/dist/services/baseten/index.d.ts +2 -0
  320. package/dist/services/baseten/index.js +7 -0
  321. package/dist/services/bland/index.d.ts +2 -0
  322. package/dist/services/bland/index.js +7 -0
  323. package/dist/services/camb/index.d.ts +2 -0
  324. package/dist/services/camb/index.js +7 -0
  325. package/dist/services/cartesia/index.d.ts +2 -0
  326. package/dist/services/cartesia/index.js +7 -0
  327. package/dist/services/cerebras/index.d.ts +2 -0
  328. package/dist/services/cerebras/index.js +7 -0
  329. package/dist/services/crusoe/index.d.ts +2 -0
  330. package/dist/services/crusoe/index.js +7 -0
  331. package/dist/services/deepgram/index.d.ts +2 -0
  332. package/dist/services/deepgram/index.js +7 -0
  333. package/dist/services/deepseek/index.d.ts +2 -0
  334. package/dist/services/deepseek/index.js +7 -0
  335. package/dist/services/elevenlabs/index.d.ts +2 -0
  336. package/dist/services/elevenlabs/index.js +7 -0
  337. package/dist/services/fal/index.d.ts +2 -0
  338. package/dist/services/fal/index.js +7 -0
  339. package/dist/services/fireworks/index.d.ts +2 -0
  340. package/dist/services/fireworks/index.js +7 -0
  341. package/dist/services/fish/index.d.ts +2 -0
  342. package/dist/services/fish/index.js +7 -0
  343. package/dist/services/funasr/index.d.ts +3 -0
  344. package/dist/services/funasr/index.js +8 -0
  345. package/dist/services/gladia/index.d.ts +2 -0
  346. package/dist/services/gladia/index.js +7 -0
  347. package/dist/services/google/index.d.ts +2 -0
  348. package/dist/services/google/index.js +7 -0
  349. package/dist/services/gradium/index.d.ts +2 -0
  350. package/dist/services/gradium/index.js +7 -0
  351. package/dist/services/grok/index.d.ts +2 -0
  352. package/dist/services/grok/index.js +7 -0
  353. package/dist/services/groq/index.d.ts +2 -0
  354. package/dist/services/groq/index.js +7 -0
  355. package/dist/services/heygen/index.d.ts +2 -0
  356. package/dist/services/heygen/index.js +7 -0
  357. package/dist/services/hume/index.d.ts +2 -0
  358. package/dist/services/hume/index.js +7 -0
  359. package/dist/services/image_service.d.ts +52 -0
  360. package/dist/services/image_service.js +60 -0
  361. package/dist/services/inception/index.d.ts +2 -0
  362. package/dist/services/inception/index.js +7 -0
  363. package/dist/services/index.d.ts +2 -0
  364. package/dist/services/index.js +8 -0
  365. package/dist/services/inworld/index.d.ts +2 -0
  366. package/dist/services/inworld/index.js +7 -0
  367. package/dist/services/keenable/index.d.ts +2 -0
  368. package/dist/services/keenable/index.js +7 -0
  369. package/dist/services/kokoro/index.d.ts +2 -0
  370. package/dist/services/kokoro/index.js +7 -0
  371. package/dist/services/llm_service.d.ts +1106 -0
  372. package/dist/services/llm_service.js +2231 -0
  373. package/dist/services/mem0/index.d.ts +2 -0
  374. package/dist/services/mem0/index.js +7 -0
  375. package/dist/services/meta/index.d.ts +2 -0
  376. package/dist/services/meta/index.js +7 -0
  377. package/dist/services/minimax/index.d.ts +2 -0
  378. package/dist/services/minimax/index.js +7 -0
  379. package/dist/services/mistral/index.d.ts +2 -0
  380. package/dist/services/mistral/index.js +7 -0
  381. package/dist/services/moondream/index.d.ts +2 -0
  382. package/dist/services/moondream/index.js +7 -0
  383. package/dist/services/moonshine/index.d.ts +2 -0
  384. package/dist/services/moonshine/index.js +7 -0
  385. package/dist/services/nebius/index.d.ts +2 -0
  386. package/dist/services/nebius/index.js +7 -0
  387. package/dist/services/neuphonic/index.d.ts +2 -0
  388. package/dist/services/neuphonic/index.js +7 -0
  389. package/dist/services/novita/index.d.ts +2 -0
  390. package/dist/services/novita/index.js +7 -0
  391. package/dist/services/nvidia/index.d.ts +2 -0
  392. package/dist/services/nvidia/index.js +11 -0
  393. package/dist/services/ollama/index.d.ts +2 -0
  394. package/dist/services/ollama/index.js +7 -0
  395. package/dist/services/openai/index.d.ts +2 -0
  396. package/dist/services/openai/index.js +7 -0
  397. package/dist/services/openclaw/index.d.ts +14 -0
  398. package/dist/services/openclaw/index.js +19 -0
  399. package/dist/services/openrouter/index.d.ts +2 -0
  400. package/dist/services/openrouter/index.js +7 -0
  401. package/dist/services/perplexity/index.d.ts +2 -0
  402. package/dist/services/perplexity/index.js +7 -0
  403. package/dist/services/piper/index.d.ts +2 -0
  404. package/dist/services/piper/index.js +7 -0
  405. package/dist/services/pocket_tts/index.d.ts +2 -0
  406. package/dist/services/pocket_tts/index.js +7 -0
  407. package/dist/services/qwen/index.d.ts +2 -0
  408. package/dist/services/qwen/index.js +7 -0
  409. package/dist/services/resembleai/index.d.ts +2 -0
  410. package/dist/services/resembleai/index.js +7 -0
  411. package/dist/services/rime/index.d.ts +2 -0
  412. package/dist/services/rime/index.js +7 -0
  413. package/dist/services/sambanova/index.d.ts +2 -0
  414. package/dist/services/sambanova/index.js +7 -0
  415. package/dist/services/sarvam/index.d.ts +2 -0
  416. package/dist/services/sarvam/index.js +7 -0
  417. package/dist/services/settings.d.ts +356 -0
  418. package/dist/services/settings.js +437 -0
  419. package/dist/services/simli/index.d.ts +2 -0
  420. package/dist/services/simli/index.js +7 -0
  421. package/dist/services/smallest/index.d.ts +2 -0
  422. package/dist/services/smallest/index.js +7 -0
  423. package/dist/services/soniox/index.d.ts +2 -0
  424. package/dist/services/soniox/index.js +7 -0
  425. package/dist/services/speechify/index.d.ts +2 -0
  426. package/dist/services/speechify/index.js +7 -0
  427. package/dist/services/speechmatics/index.d.ts +2 -0
  428. package/dist/services/speechmatics/index.js +7 -0
  429. package/dist/services/stt_latency.d.ts +62 -0
  430. package/dist/services/stt_latency.js +71 -0
  431. package/dist/services/stt_service.d.ts +601 -0
  432. package/dist/services/stt_service.js +1044 -0
  433. package/dist/services/tavus/index.d.ts +2 -0
  434. package/dist/services/tavus/index.js +7 -0
  435. package/dist/services/together/index.d.ts +2 -0
  436. package/dist/services/together/index.js +7 -0
  437. package/dist/services/tts_service.d.ts +909 -0
  438. package/dist/services/tts_service.js +2018 -0
  439. package/dist/services/ultravox/index.d.ts +2 -0
  440. package/dist/services/ultravox/index.js +9 -0
  441. package/dist/services/vision_service.d.ts +56 -0
  442. package/dist/services/vision_service.js +62 -0
  443. package/dist/services/websocket_service.d.ts +213 -0
  444. package/dist/services/websocket_service.js +654 -0
  445. package/dist/services/whisper/index.d.ts +2 -0
  446. package/dist/services/whisper/index.js +9 -0
  447. package/dist/services/xai/index.d.ts +2 -0
  448. package/dist/services/xai/index.js +9 -0
  449. package/dist/services/xtts/index.d.ts +2 -0
  450. package/dist/services/xtts/index.js +9 -0
  451. package/dist/tests/index.d.ts +2 -0
  452. package/dist/tests/index.js +8 -0
  453. package/dist/tests/utils.d.ts +123 -0
  454. package/dist/tests/utils.js +212 -0
  455. package/dist/transcriptions/index.d.ts +2 -0
  456. package/dist/transcriptions/index.js +8 -0
  457. package/dist/transcriptions/language.d.ts +376 -0
  458. package/dist/transcriptions/language.js +543 -0
  459. package/dist/transports/base_input.d.ts +149 -0
  460. package/dist/transports/base_input.js +338 -0
  461. package/dist/transports/base_output.d.ts +432 -0
  462. package/dist/transports/base_output.js +1231 -0
  463. package/dist/transports/base_transport.d.ts +223 -0
  464. package/dist/transports/base_transport.js +167 -0
  465. package/dist/transports/daily/index.d.ts +2 -0
  466. package/dist/transports/daily/index.js +9 -0
  467. package/dist/transports/heygen/index.d.ts +2 -0
  468. package/dist/transports/heygen/index.js +9 -0
  469. package/dist/transports/index.d.ts +2 -0
  470. package/dist/transports/index.js +8 -0
  471. package/dist/transports/lemonslice/index.d.ts +2 -0
  472. package/dist/transports/lemonslice/index.js +9 -0
  473. package/dist/transports/livekit/index.d.ts +2 -0
  474. package/dist/transports/livekit/index.js +9 -0
  475. package/dist/transports/local/index.d.ts +2 -0
  476. package/dist/transports/local/index.js +9 -0
  477. package/dist/transports/moq/index.d.ts +2 -0
  478. package/dist/transports/moq/index.js +9 -0
  479. package/dist/transports/smallwebrtc/index.d.ts +2 -0
  480. package/dist/transports/smallwebrtc/index.js +9 -0
  481. package/dist/transports/tavus/index.d.ts +2 -0
  482. package/dist/transports/tavus/index.js +9 -0
  483. package/dist/transports/video_in_sampler.d.ts +157 -0
  484. package/dist/transports/video_in_sampler.js +258 -0
  485. package/dist/transports/vonage/index.d.ts +2 -0
  486. package/dist/transports/vonage/index.js +9 -0
  487. package/dist/transports/websocket/index.d.ts +2 -0
  488. package/dist/transports/websocket/index.js +9 -0
  489. package/dist/transports/whatsapp/index.d.ts +2 -0
  490. package/dist/transports/whatsapp/index.js +9 -0
  491. package/dist/turns/eager_end_of_turn_mixin.d.ts +70 -0
  492. package/dist/turns/eager_end_of_turn_mixin.js +122 -0
  493. package/dist/turns/empty_user_turn.d.ts +55 -0
  494. package/dist/turns/empty_user_turn.js +53 -0
  495. package/dist/turns/index.d.ts +2 -0
  496. package/dist/turns/index.js +8 -0
  497. package/dist/turns/speculation_gate.d.ts +169 -0
  498. package/dist/turns/speculation_gate.js +294 -0
  499. package/dist/turns/types.d.ts +33 -0
  500. package/dist/turns/types.js +35 -0
  501. package/dist/turns/user_idle_controller.d.ts +94 -0
  502. package/dist/turns/user_idle_controller.js +187 -0
  503. package/dist/turns/user_mute/always_user_mute_strategy.d.ts +15 -0
  504. package/dist/turns/user_mute/always_user_mute_strategy.js +29 -0
  505. package/dist/turns/user_mute/base_user_mute_strategy.d.ts +39 -0
  506. package/dist/turns/user_mute/base_user_mute_strategy.js +45 -0
  507. package/dist/turns/user_mute/first_speech_user_mute_strategy.d.ts +28 -0
  508. package/dist/turns/user_mute/first_speech_user_mute_strategy.js +52 -0
  509. package/dist/turns/user_mute/function_call_user_mute_strategy.d.ts +25 -0
  510. package/dist/turns/user_mute/function_call_user_mute_strategy.js +50 -0
  511. package/dist/turns/user_mute/index.d.ts +6 -0
  512. package/dist/turns/user_mute/index.js +11 -0
  513. package/dist/turns/user_mute/mute_until_first_bot_complete_user_mute_strategy.d.ts +43 -0
  514. package/dist/turns/user_mute/mute_until_first_bot_complete_user_mute_strategy.js +76 -0
  515. package/dist/turns/user_start/base_user_turn_start_strategy.d.ts +135 -0
  516. package/dist/turns/user_start/base_user_turn_start_strategy.js +134 -0
  517. package/dist/turns/user_start/external_user_turn_start_strategy.d.ts +45 -0
  518. package/dist/turns/user_start/external_user_turn_start_strategy.js +64 -0
  519. package/dist/turns/user_start/index.d.ts +8 -0
  520. package/dist/turns/user_start/index.js +16 -0
  521. package/dist/turns/user_start/krisp_viva_ip_user_turn_start_strategy.d.ts +133 -0
  522. package/dist/turns/user_start/krisp_viva_ip_user_turn_start_strategy.js +243 -0
  523. package/dist/turns/user_start/min_words_user_turn_start_strategy.d.ts +60 -0
  524. package/dist/turns/user_start/min_words_user_turn_start_strategy.js +102 -0
  525. package/dist/turns/user_start/transcription_user_turn_start_strategy.d.ts +29 -0
  526. package/dist/turns/user_start/transcription_user_turn_start_strategy.js +43 -0
  527. package/dist/turns/user_start/vad_user_turn_start_strategy.d.ts +20 -0
  528. package/dist/turns/user_start/vad_user_turn_start_strategy.js +31 -0
  529. package/dist/turns/user_start/wake_phrase_user_turn_start_strategy.d.ts +141 -0
  530. package/dist/turns/user_start/wake_phrase_user_turn_start_strategy.js +238 -0
  531. package/dist/turns/user_stop/base_user_turn_stop_strategy.d.ts +174 -0
  532. package/dist/turns/user_stop/base_user_turn_stop_strategy.js +170 -0
  533. package/dist/turns/user_stop/deferred_user_turn_stop_strategy.d.ts +81 -0
  534. package/dist/turns/user_stop/deferred_user_turn_stop_strategy.js +107 -0
  535. package/dist/turns/user_stop/eager_match_policy.d.ts +36 -0
  536. package/dist/turns/user_stop/eager_match_policy.js +50 -0
  537. package/dist/turns/user_stop/eager_user_turn_stop_strategy.d.ts +84 -0
  538. package/dist/turns/user_stop/eager_user_turn_stop_strategy.js +154 -0
  539. package/dist/turns/user_stop/external_user_turn_completion_stop_strategy.d.ts +45 -0
  540. package/dist/turns/user_stop/external_user_turn_completion_stop_strategy.js +55 -0
  541. package/dist/turns/user_stop/external_user_turn_stop_strategy.d.ts +115 -0
  542. package/dist/turns/user_stop/external_user_turn_stop_strategy.js +205 -0
  543. package/dist/turns/user_stop/index.d.ts +10 -0
  544. package/dist/turns/user_stop/index.js +15 -0
  545. package/dist/turns/user_stop/llm_turn_completion_user_turn_stop_strategy.d.ts +44 -0
  546. package/dist/turns/user_stop/llm_turn_completion_user_turn_stop_strategy.js +59 -0
  547. package/dist/turns/user_stop/speech_timeout_user_turn_stop_strategy.d.ts +140 -0
  548. package/dist/turns/user_stop/speech_timeout_user_turn_stop_strategy.js +303 -0
  549. package/dist/turns/user_stop/turn_analyzer_user_turn_stop_strategy.d.ts +135 -0
  550. package/dist/turns/user_stop/turn_analyzer_user_turn_stop_strategy.js +332 -0
  551. package/dist/turns/user_turn_completion_mixin.d.ts +147 -0
  552. package/dist/turns/user_turn_completion_mixin.js +591 -0
  553. package/dist/turns/user_turn_controller.d.ts +134 -0
  554. package/dist/turns/user_turn_controller.js +335 -0
  555. package/dist/turns/user_turn_processor.d.ts +87 -0
  556. package/dist/turns/user_turn_processor.js +180 -0
  557. package/dist/turns/user_turn_strategies.d.ts +187 -0
  558. package/dist/turns/user_turn_strategies.js +222 -0
  559. package/dist/utils/async_tool_cancellation.d.ts +35 -0
  560. package/dist/utils/async_tool_cancellation.js +78 -0
  561. package/dist/utils/asyncio/index.d.ts +2 -0
  562. package/dist/utils/asyncio/index.js +7 -0
  563. package/dist/utils/asyncio/task_manager.d.ts +49 -0
  564. package/dist/utils/asyncio/task_manager.js +105 -0
  565. package/dist/utils/base_object.d.ts +76 -0
  566. package/dist/utils/base_object.js +154 -0
  567. package/dist/utils/context/aggregated_frame_sequencer.d.ts +491 -0
  568. package/dist/utils/context/aggregated_frame_sequencer.js +803 -0
  569. package/dist/utils/context/audio_context_manager.d.ts +131 -0
  570. package/dist/utils/context/audio_context_manager.js +233 -0
  571. package/dist/utils/context/index.d.ts +2 -0
  572. package/dist/utils/context/index.js +7 -0
  573. package/dist/utils/context/llm_context_summarization.d.ts +258 -0
  574. package/dist/utils/context/llm_context_summarization.js +511 -0
  575. package/dist/utils/context/text_segment_map.d.ts +611 -0
  576. package/dist/utils/context/text_segment_map.js +1132 -0
  577. package/dist/utils/context/word_completion_tracker.d.ts +273 -0
  578. package/dist/utils/context/word_completion_tracker.js +441 -0
  579. package/dist/utils/context/word_timestamp_tracker.d.ts +72 -0
  580. package/dist/utils/context/word_timestamp_tracker.js +98 -0
  581. package/dist/utils/deprecation.d.ts +28 -0
  582. package/dist/utils/deprecation.js +75 -0
  583. package/dist/utils/env.d.ts +38 -0
  584. package/dist/utils/env.js +62 -0
  585. package/dist/utils/errors.d.ts +75 -0
  586. package/dist/utils/errors.js +202 -0
  587. package/dist/utils/file_resolver.d.ts +126 -0
  588. package/dist/utils/file_resolver.js +314 -0
  589. package/dist/utils/file_storage.d.ts +115 -0
  590. package/dist/utils/file_storage.js +178 -0
  591. package/dist/utils/frame_queue.d.ts +36 -0
  592. package/dist/utils/frame_queue.js +66 -0
  593. package/dist/utils/http.d.ts +39 -0
  594. package/dist/utils/http.js +53 -0
  595. package/dist/utils/image.d.ts +14 -0
  596. package/dist/utils/image.js +63 -0
  597. package/dist/utils/index.d.ts +2 -0
  598. package/dist/utils/index.js +8 -0
  599. package/dist/utils/jpeg_encoder.d.ts +14 -0
  600. package/dist/utils/jpeg_encoder.js +315 -0
  601. package/dist/utils/log_config.d.ts +34 -0
  602. package/dist/utils/log_config.js +76 -0
  603. package/dist/utils/logger.d.ts +40 -0
  604. package/dist/utils/logger.js +91 -0
  605. package/dist/utils/mixin.d.ts +14 -0
  606. package/dist/utils/mixin.js +63 -0
  607. package/dist/utils/network.d.ts +73 -0
  608. package/dist/utils/network.js +90 -0
  609. package/dist/utils/security/allowed_origins.d.ts +16 -0
  610. package/dist/utils/security/allowed_origins.js +34 -0
  611. package/dist/utils/security/index.d.ts +2 -0
  612. package/dist/utils/security/index.js +7 -0
  613. package/dist/utils/security/redaction.d.ts +27 -0
  614. package/dist/utils/security/redaction.js +123 -0
  615. package/dist/utils/security/ssrf.d.ts +79 -0
  616. package/dist/utils/security/ssrf.js +327 -0
  617. package/dist/utils/shared.d.ts +35 -0
  618. package/dist/utils/shared.js +136 -0
  619. package/dist/utils/startup.d.ts +17 -0
  620. package/dist/utils/startup.js +130 -0
  621. package/dist/utils/string.d.ts +116 -0
  622. package/dist/utils/string.js +460 -0
  623. package/dist/utils/sync/base_notifier.d.ts +25 -0
  624. package/dist/utils/sync/base_notifier.js +16 -0
  625. package/dist/utils/sync/event_notifier.d.ts +38 -0
  626. package/dist/utils/sync/event_notifier.js +51 -0
  627. package/dist/utils/sync/index.d.ts +2 -0
  628. package/dist/utils/sync/index.js +7 -0
  629. package/dist/utils/text/alnum_utils.d.ts +109 -0
  630. package/dist/utils/text/alnum_utils.js +262 -0
  631. package/dist/utils/text/base_text_aggregator.d.ts +146 -0
  632. package/dist/utils/text/base_text_aggregator.js +102 -0
  633. package/dist/utils/text/base_text_filter.d.ts +54 -0
  634. package/dist/utils/text/base_text_filter.js +50 -0
  635. package/dist/utils/text/index.d.ts +2 -0
  636. package/dist/utils/text/index.js +7 -0
  637. package/dist/utils/text/markdown_text_filter.d.ts +147 -0
  638. package/dist/utils/text/markdown_text_filter.js +522 -0
  639. package/dist/utils/text/markup_utils.d.ts +54 -0
  640. package/dist/utils/text/markup_utils.js +156 -0
  641. package/dist/utils/text/pattern_pair_aggregator.d.ts +251 -0
  642. package/dist/utils/text/pattern_pair_aggregator.js +478 -0
  643. package/dist/utils/text/phonemes.d.ts +60 -0
  644. package/dist/utils/text/phonemes.js +172 -0
  645. package/dist/utils/text/simple_text_aggregator.d.ts +135 -0
  646. package/dist/utils/text/simple_text_aggregator.js +254 -0
  647. package/dist/utils/text/skip_tags_aggregator.d.ts +85 -0
  648. package/dist/utils/text/skip_tags_aggregator.js +147 -0
  649. package/dist/utils/text/transforms/acronyms.d.ts +21 -0
  650. package/dist/utils/text/transforms/acronyms.js +31 -0
  651. package/dist/utils/text/transforms/currency.d.ts +16 -0
  652. package/dist/utils/text/transforms/currency.js +56 -0
  653. package/dist/utils/text/transforms/dates.d.ts +18 -0
  654. package/dist/utils/text/transforms/dates.js +102 -0
  655. package/dist/utils/text/transforms/email.d.ts +17 -0
  656. package/dist/utils/text/transforms/email.js +35 -0
  657. package/dist/utils/text/transforms/index.d.ts +37 -0
  658. package/dist/utils/text/transforms/index.js +42 -0
  659. package/dist/utils/text/transforms/numbers.d.ts +25 -0
  660. package/dist/utils/text/transforms/numbers.js +59 -0
  661. package/dist/utils/text/transforms/percentages.d.ts +16 -0
  662. package/dist/utils/text/transforms/percentages.js +32 -0
  663. package/dist/utils/text/transforms/phone.d.ts +21 -0
  664. package/dist/utils/text/transforms/phone.js +39 -0
  665. package/dist/utils/text/transforms/pronunciations.d.ts +65 -0
  666. package/dist/utils/text/transforms/pronunciations.js +112 -0
  667. package/dist/utils/text/transforms/replacements.d.ts +39 -0
  668. package/dist/utils/text/transforms/replacements.js +46 -0
  669. package/dist/utils/text/transforms/strip_markdown.d.ts +25 -0
  670. package/dist/utils/text/transforms/strip_markdown.js +60 -0
  671. package/dist/utils/text/transforms/units.d.ts +22 -0
  672. package/dist/utils/text/transforms/units.js +81 -0
  673. package/dist/utils/text/transforms/voice_formatter.d.ts +86 -0
  674. package/dist/utils/text/transforms/voice_formatter.js +98 -0
  675. package/dist/utils/text/unicode_digits.d.ts +3 -0
  676. package/dist/utils/text/unicode_digits.js +34 -0
  677. package/dist/utils/text/word_timestamp_utils.d.ts +26 -0
  678. package/dist/utils/text/word_timestamp_utils.js +52 -0
  679. package/dist/utils/time.d.ts +13 -0
  680. package/dist/utils/time.js +31 -0
  681. package/dist/utils/tracing/index.d.ts +3 -0
  682. package/dist/utils/tracing/index.js +8 -0
  683. package/dist/utils/tracing/service_attributes.d.ts +198 -0
  684. package/dist/utils/tracing/service_attributes.js +434 -0
  685. package/dist/utils/tracing/service_decorators.d.ts +214 -0
  686. package/dist/utils/tracing/service_decorators.js +1662 -0
  687. package/dist/utils/tracing/setup.d.ts +107 -0
  688. package/dist/utils/tracing/setup.js +160 -0
  689. package/dist/utils/tracing/tracing_context.d.ts +55 -0
  690. package/dist/utils/tracing/tracing_context.js +97 -0
  691. package/dist/utils/tracing/turn_trace_observer.d.ts +95 -0
  692. package/dist/utils/tracing/turn_trace_observer.js +233 -0
  693. package/dist/utils/types.d.ts +80 -0
  694. package/dist/utils/types.js +108 -0
  695. package/dist/utils/utils.d.ts +5 -0
  696. package/dist/utils/utils.js +22 -0
  697. package/dist/utils/yaml.d.ts +179 -0
  698. package/dist/utils/yaml.js +556 -0
  699. package/dist/version.d.ts +3 -0
  700. package/dist/version.js +7 -0
  701. package/dist/workers/base_worker.d.ts +772 -0
  702. package/dist/workers/base_worker.js +1298 -0
  703. package/dist/workers/index.d.ts +2 -0
  704. package/dist/workers/index.js +8 -0
  705. package/dist/workers/llm/backend_llm_worker.d.ts +552 -0
  706. package/dist/workers/llm/backend_llm_worker.js +1055 -0
  707. package/dist/workers/llm/index.d.ts +6 -0
  708. package/dist/workers/llm/index.js +11 -0
  709. package/dist/workers/llm/llm_context_worker.d.ts +66 -0
  710. package/dist/workers/llm/llm_context_worker.js +72 -0
  711. package/dist/workers/llm/llm_worker.d.ts +180 -0
  712. package/dist/workers/llm/llm_worker.js +323 -0
  713. package/dist/workers/llm/tool_decorator.d.ts +68 -0
  714. package/dist/workers/llm/tool_decorator.js +60 -0
  715. package/dist/workers/proxy/index.d.ts +3 -0
  716. package/dist/workers/proxy/index.js +9 -0
  717. package/dist/workers/proxy/websocket/client.d.ts +110 -0
  718. package/dist/workers/proxy/websocket/client.js +196 -0
  719. package/dist/workers/proxy/websocket/index.d.ts +3 -0
  720. package/dist/workers/proxy/websocket/index.js +10 -0
  721. package/dist/workers/runner.d.ts +268 -0
  722. package/dist/workers/runner.js +489 -0
  723. package/dist/workers/ui/index.d.ts +22 -0
  724. package/dist/workers/ui/index.js +27 -0
  725. package/dist/workers/ui/ui_event_decorator.d.ts +43 -0
  726. package/dist/workers/ui/ui_event_decorator.js +75 -0
  727. package/dist/workers/ui/ui_job_context.d.ts +12 -0
  728. package/dist/workers/ui/ui_job_context.js +17 -0
  729. package/dist/workers/ui/ui_prompts.d.ts +21 -0
  730. package/dist/workers/ui/ui_prompts.js +41 -0
  731. package/dist/workers/ui/ui_tools.d.ts +32 -0
  732. package/dist/workers/ui/ui_tools.js +112 -0
  733. package/dist/workers/ui/ui_worker.d.ts +571 -0
  734. package/dist/workers/ui/ui_worker.js +1156 -0
  735. package/package.json +61 -3
  736. package/README.md +0 -5
@@ -0,0 +1,75 @@
1
+ // Copyright (c) 2024-2026, Daily
2
+ // Copyright (c) 2026, pipedog contributors
3
+ // SPDX-License-Identifier: BSD-2-Clause
4
+ //
5
+ // Ported from pipecat: src/pipecat/utils/deprecation.py
6
+ /**
7
+ * Deprecation marker conventions for the Pipecat framework.
8
+ *
9
+ * Every deprecation is emitted with a message that follows the same canonical
10
+ * template so it is machine-parseable (see `DEPRECATION_MESSAGE_RE`) and
11
+ * consistent for readers:
12
+ *
13
+ * `Subject` is deprecated since X.Y.Z and will be removed in A.B.C. Use `Replacement` instead.
14
+ *
15
+ * where the removal version `A.B.C` is a concrete semantic version (e.g.
16
+ * `2.0.0`) — we commit to the release that removes it rather than saying "a
17
+ * future release" — and the second sentence is `No replacement.` when there is
18
+ * nothing to migrate to, stated explicitly and never omitted. Additional
19
+ * sentences may follow.
20
+ *
21
+ * Symbols (classes, functions, methods, properties) are marked with the
22
+ * `@deprecated` JSDoc tag, which TypeScript tooling and IDEs flag statically,
23
+ * and warn at runtime with `warnDeprecated`. Everything else — parameters,
24
+ * fields, module moves, behavior/value changes — warns with `warnDeprecated`.
25
+ *
26
+ * Porting notes: pipedog does not port deprecated upstream APIs, so the
27
+ * PEP 702 `deprecated` decorator re-export, `renamed_init_field` (a dataclass
28
+ * constructor rewriter for renamed fields) and the deprecated
29
+ * `warn_deprecated_read` are not ported.
30
+ */
31
+ import { logger } from "./logger.js";
32
+ /**
33
+ * The canonical deprecation message, for symbol and hand-written warnings
34
+ * alike. Kept consistent and parseable so the developer-facing message agrees
35
+ * with the docstring directive.
36
+ */
37
+ export const DEPRECATION_MESSAGE_RE = /^`(?<subject>[^`]+)` is deprecated since (?<version>\d+\.\d+\.\d+) and will be removed in (?<removal>\d+\.\d+\.\d+)\. (?:Use (?<replacement>.+) instead\.|No replacement\.)/;
38
+ /**
39
+ * Call sites already warned about by `warnDeprecated`, identified by message
40
+ * and source location (`message\u0000location`).
41
+ *
42
+ * The record lasts for the life of the process, so a test asserting on one of
43
+ * these warnings clears it first.
44
+ */
45
+ export const _warnedSites = new Set();
46
+ // The stack line naming the caller `stacklevel` frames up from warnDeprecated's caller.
47
+ function callSite(stacklevel) {
48
+ const stack = new Error().stack;
49
+ if (!stack)
50
+ return "";
51
+ const lines = stack.split("\n").filter((line) => /^\s+at\s|@/.test(line));
52
+ // `lines` drops the message line: 0 is callSite, 1 warnDeprecated, 2 the caller.
53
+ return lines[1 + stacklevel]?.trim() ?? "";
54
+ }
55
+ /**
56
+ * Warn once per call site that something deprecated was used.
57
+ *
58
+ * Many of Pipecat's deprecations are detected inside Pipecat, as a pipeline
59
+ * runs, so the warning is always logged, and a per-site record keeps it to one
60
+ * warning per call site: a deprecated field read wherever its object travels,
61
+ * or a check on every frame, would otherwise repeat without bound.
62
+ *
63
+ * @param message The warning message, following `DEPRECATION_MESSAGE_RE`.
64
+ * @param stacklevel Counted from the caller: `1` names the line that calls this
65
+ * function, `2` its caller.
66
+ */
67
+ export function warnDeprecated(message, stacklevel = 1) {
68
+ const site = `${message}\u0000${callSite(stacklevel)}`;
69
+ if (_warnedSites.has(site)) {
70
+ return;
71
+ }
72
+ _warnedSites.add(site);
73
+ logger.warning(`DeprecationWarning: ${message}`);
74
+ }
75
+ //# sourceMappingURL=deprecation.js.map
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Environment variable helpers.
3
+ *
4
+ * This module provides small, centralized parsing helpers for environment variables.
5
+ */
6
+ /**
7
+ * Read an environment variable (Python's `os.getenv`), or `undefined` when it
8
+ * is not set or the runtime has no process environment (e.g. Cloudflare
9
+ * Workers without `nodejs_compat`).
10
+ */
11
+ export declare function getEnv(name: string): string | undefined;
12
+ /** Raised when an environment variable value cannot be parsed. */
13
+ export declare class InvalidEnvVarValueError extends Error {
14
+ name: string;
15
+ /** The environment variable's name. */
16
+ readonly envName: string;
17
+ readonly value: string;
18
+ readonly expected: string;
19
+ /** Initialize an InvalidEnvVarValueError. */
20
+ constructor(options: {
21
+ name: string;
22
+ value: string;
23
+ expected: string;
24
+ });
25
+ }
26
+ /**
27
+ * Interpret an environment variable as a boolean.
28
+ *
29
+ * - If the variable is **not set**, returns `defaultValue`.
30
+ * - If the variable is set to a recognized boolean string, returns the parsed value.
31
+ * - Otherwise, throws `InvalidEnvVarValueError`.
32
+ *
33
+ * Recognized values (case-insensitive, whitespace ignored):
34
+ * - Truthy: "1", "true", "yes", "y", "on"
35
+ * - Falsy: "0", "false", "no", "n", "off", ""
36
+ */
37
+ export declare function envTruthy(name: string, defaultValue?: boolean): boolean;
38
+ //# sourceMappingURL=env.d.ts.map
@@ -0,0 +1,62 @@
1
+ // Copyright (c) 2024-2026, Daily
2
+ // Copyright (c) 2026, pipedog contributors
3
+ // SPDX-License-Identifier: BSD-2-Clause
4
+ //
5
+ // Ported from pipecat: src/pipecat/utils/env.py
6
+ /**
7
+ * Environment variable helpers.
8
+ *
9
+ * This module provides small, centralized parsing helpers for environment variables.
10
+ */
11
+ /**
12
+ * Read an environment variable (Python's `os.getenv`), or `undefined` when it
13
+ * is not set or the runtime has no process environment (e.g. Cloudflare
14
+ * Workers without `nodejs_compat`).
15
+ */
16
+ export function getEnv(name) {
17
+ const env = globalThis.process
18
+ ?.env;
19
+ return env?.[name];
20
+ }
21
+ /** Raised when an environment variable value cannot be parsed. */
22
+ export class InvalidEnvVarValueError extends Error {
23
+ name = "InvalidEnvVarValueError";
24
+ /** The environment variable's name. */
25
+ envName;
26
+ value;
27
+ expected;
28
+ /** Initialize an InvalidEnvVarValueError. */
29
+ constructor(options) {
30
+ super(`Invalid value for env var '${options.name}': '${options.value}'. Expected ${options.expected}.`);
31
+ // `name` is taken by Error, so the variable's name is `envName`.
32
+ this.envName = options.name;
33
+ this.value = options.value;
34
+ this.expected = options.expected;
35
+ }
36
+ }
37
+ const TRUTHY = new Set(["1", "true", "yes", "y", "on"]);
38
+ const FALSY = new Set(["0", "false", "no", "n", "off", ""]);
39
+ /**
40
+ * Interpret an environment variable as a boolean.
41
+ *
42
+ * - If the variable is **not set**, returns `defaultValue`.
43
+ * - If the variable is set to a recognized boolean string, returns the parsed value.
44
+ * - Otherwise, throws `InvalidEnvVarValueError`.
45
+ *
46
+ * Recognized values (case-insensitive, whitespace ignored):
47
+ * - Truthy: "1", "true", "yes", "y", "on"
48
+ * - Falsy: "0", "false", "no", "n", "off", ""
49
+ */
50
+ export function envTruthy(name, defaultValue = false) {
51
+ const raw = getEnv(name);
52
+ if (raw === undefined) {
53
+ return defaultValue;
54
+ }
55
+ const val = raw.trim().toLowerCase();
56
+ if (TRUTHY.has(val))
57
+ return true;
58
+ if (FALSY.has(val))
59
+ return false;
60
+ throw new InvalidEnvVarValueError({ name, value: raw, expected: "true or false" });
61
+ }
62
+ //# sourceMappingURL=env.js.map
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Why an operation failed, independent of the provider that failed it.
3
+ *
4
+ * - UNKNOWN: The cause could not be determined.
5
+ * - AUTHENTICATION: Credentials are missing or invalid.
6
+ * - AUTHORIZATION: Credentials are valid but lack access to the resource.
7
+ * - INVALID_REQUEST: The request itself is malformed or names something that
8
+ * doesn't exist, such as an unknown model or voice.
9
+ * - RATE_LIMIT: Too many requests were sent in too short a window.
10
+ * - QUOTA: The account's credit or usage allowance is exhausted.
11
+ * - CONNECTIVITY: The service could not be reached.
12
+ * - SERVER: The provider reported an internal failure.
13
+ * - APPLICATION: The application failed, not the provider. Reported by a
14
+ * service on behalf of code it invoked — a tool handler, say — or for
15
+ * application-supplied content a provider rejected once the service
16
+ * has repaired its context (e.g. removed the rejected file message).
17
+ * Either way the failure says nothing about the service's own health.
18
+ */
19
+ export declare class ErrorCategory {
20
+ static readonly UNKNOWN: ErrorCategory;
21
+ static readonly AUTHENTICATION: ErrorCategory;
22
+ static readonly AUTHORIZATION: ErrorCategory;
23
+ static readonly INVALID_REQUEST: ErrorCategory;
24
+ static readonly RATE_LIMIT: ErrorCategory;
25
+ static readonly QUOTA: ErrorCategory;
26
+ static readonly CONNECTIVITY: ErrorCategory;
27
+ static readonly SERVER: ErrorCategory;
28
+ static readonly APPLICATION: ErrorCategory;
29
+ readonly name: string;
30
+ readonly value: string;
31
+ private constructor();
32
+ /** All categories, in declaration order. */
33
+ static values(): readonly ErrorCategory[];
34
+ /** The category with the given value (`ErrorCategory("quota")`). */
35
+ static fromValue(value: string): ErrorCategory;
36
+ /**
37
+ * Whether the failure will keep recurring until something changes.
38
+ *
39
+ * A permanent failure gives the same result every time it is retried:
40
+ * the credentials stay rejected, the request stays malformed. Only new
41
+ * credentials or settings can clear it, so retrying is pointless.
42
+ */
43
+ get isPermanent(): boolean;
44
+ toString(): string;
45
+ }
46
+ /**
47
+ * Classify an HTTP status code.
48
+ *
49
+ * @param statusCode The HTTP status code reported by the provider.
50
+ * @returns The matching category, or `ErrorCategory.UNKNOWN` if the code carries
51
+ * no provider-independent meaning.
52
+ */
53
+ export declare function classifyHttpStatusCode(statusCode: number): ErrorCategory;
54
+ /**
55
+ * Extract an HTTP status code from an exception, if it carries one.
56
+ *
57
+ * Recognizes the attribute shapes used by the HTTP and websocket libraries
58
+ * services build on: a `response` holding `status_code` / `statusCode` or
59
+ * `status` (e.g. a fetch `Response`), and those same attributes directly on
60
+ * the exception (provider SDKs).
61
+ *
62
+ * @param exception The exception to inspect.
63
+ * @returns The status code, or null if the exception doesn't carry one.
64
+ */
65
+ export declare function extractHttpStatusCode(exception: unknown): number | null;
66
+ /**
67
+ * Classify an exception by the HTTP status code it carries.
68
+ *
69
+ * @param exception The exception to classify.
70
+ * @returns The matching category, or `ErrorCategory.UNKNOWN` when the exception is
71
+ * not recognized. Providers that throw SDK-specific exceptions carrying no
72
+ * status code need their own classification.
73
+ */
74
+ export declare function classifyHttpException(exception: unknown): ErrorCategory;
75
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1,202 @@
1
+ // Copyright (c) 2024-2026, Daily
2
+ // Copyright (c) 2026, pipedog contributors
3
+ // SPDX-License-Identifier: BSD-2-Clause
4
+ //
5
+ // Ported from pipecat: src/pipecat/utils/errors.py
6
+ /**
7
+ * Error classification shared by services.
8
+ *
9
+ * Provides a provider-agnostic vocabulary for *why* an operation failed, so that
10
+ * callers can tell a transient failure (worth retrying) from a permanent one
11
+ * (retrying will never help).
12
+ */
13
+ import { TimeoutError } from "@pipedog/asyncio";
14
+ /**
15
+ * Why an operation failed, independent of the provider that failed it.
16
+ *
17
+ * - UNKNOWN: The cause could not be determined.
18
+ * - AUTHENTICATION: Credentials are missing or invalid.
19
+ * - AUTHORIZATION: Credentials are valid but lack access to the resource.
20
+ * - INVALID_REQUEST: The request itself is malformed or names something that
21
+ * doesn't exist, such as an unknown model or voice.
22
+ * - RATE_LIMIT: Too many requests were sent in too short a window.
23
+ * - QUOTA: The account's credit or usage allowance is exhausted.
24
+ * - CONNECTIVITY: The service could not be reached.
25
+ * - SERVER: The provider reported an internal failure.
26
+ * - APPLICATION: The application failed, not the provider. Reported by a
27
+ * service on behalf of code it invoked — a tool handler, say — or for
28
+ * application-supplied content a provider rejected once the service
29
+ * has repaired its context (e.g. removed the rejected file message).
30
+ * Either way the failure says nothing about the service's own health.
31
+ */
32
+ export class ErrorCategory {
33
+ static UNKNOWN = new ErrorCategory("UNKNOWN", "unknown");
34
+ static AUTHENTICATION = new ErrorCategory("AUTHENTICATION", "authentication");
35
+ static AUTHORIZATION = new ErrorCategory("AUTHORIZATION", "authorization");
36
+ static INVALID_REQUEST = new ErrorCategory("INVALID_REQUEST", "invalid_request");
37
+ static RATE_LIMIT = new ErrorCategory("RATE_LIMIT", "rate_limit");
38
+ static QUOTA = new ErrorCategory("QUOTA", "quota");
39
+ static CONNECTIVITY = new ErrorCategory("CONNECTIVITY", "connectivity");
40
+ static SERVER = new ErrorCategory("SERVER", "server");
41
+ static APPLICATION = new ErrorCategory("APPLICATION", "application");
42
+ name;
43
+ value;
44
+ constructor(name, value) {
45
+ this.name = name;
46
+ this.value = value;
47
+ }
48
+ /** All categories, in declaration order. */
49
+ static values() {
50
+ return [
51
+ ErrorCategory.UNKNOWN,
52
+ ErrorCategory.AUTHENTICATION,
53
+ ErrorCategory.AUTHORIZATION,
54
+ ErrorCategory.INVALID_REQUEST,
55
+ ErrorCategory.RATE_LIMIT,
56
+ ErrorCategory.QUOTA,
57
+ ErrorCategory.CONNECTIVITY,
58
+ ErrorCategory.SERVER,
59
+ ErrorCategory.APPLICATION,
60
+ ];
61
+ }
62
+ /** The category with the given value (`ErrorCategory("quota")`). */
63
+ static fromValue(value) {
64
+ const category = ErrorCategory.values().find((c) => c.value === value);
65
+ if (!category) {
66
+ throw new Error(`'${value}' is not a valid ErrorCategory`);
67
+ }
68
+ return category;
69
+ }
70
+ /**
71
+ * Whether the failure will keep recurring until something changes.
72
+ *
73
+ * A permanent failure gives the same result every time it is retried:
74
+ * the credentials stay rejected, the request stays malformed. Only new
75
+ * credentials or settings can clear it, so retrying is pointless.
76
+ */
77
+ get isPermanent() {
78
+ return PERMANENT_CATEGORIES.has(this);
79
+ }
80
+ toString() {
81
+ return `ErrorCategory.${this.name}`;
82
+ }
83
+ }
84
+ const PERMANENT_CATEGORIES = new Set([
85
+ ErrorCategory.AUTHENTICATION,
86
+ ErrorCategory.AUTHORIZATION,
87
+ ErrorCategory.INVALID_REQUEST,
88
+ ]);
89
+ const HTTP_STATUS_CODE_CATEGORIES = new Map([
90
+ [400, ErrorCategory.INVALID_REQUEST],
91
+ [401, ErrorCategory.AUTHENTICATION],
92
+ [402, ErrorCategory.QUOTA],
93
+ [403, ErrorCategory.AUTHORIZATION],
94
+ [404, ErrorCategory.INVALID_REQUEST],
95
+ [422, ErrorCategory.INVALID_REQUEST],
96
+ [429, ErrorCategory.RATE_LIMIT],
97
+ ]);
98
+ // Error codes JS runtimes attach to connection failures (Python's
99
+ // ConnectionError subclasses and socket.gaierror).
100
+ const CONNECTIVITY_ERROR_CODES = new Set([
101
+ "ECONNREFUSED",
102
+ "ECONNRESET",
103
+ "ECONNABORTED",
104
+ "EPIPE",
105
+ "ENOTFOUND",
106
+ "EAI_AGAIN",
107
+ "EHOSTUNREACH",
108
+ "ENETUNREACH",
109
+ "ETIMEDOUT",
110
+ "ConnectionRefused",
111
+ "ConnectionClosed",
112
+ ]);
113
+ // Python matches ConnectionError, TimeoutError and socket.gaierror. JS has no
114
+ // such hierarchy: match asyncio/DOM timeouts, network errors, the error codes
115
+ // above, and fetch's "fetch failed" TypeError (also on its `cause`).
116
+ function isConnectivityError(exception) {
117
+ if (exception instanceof TimeoutError)
118
+ return true;
119
+ if (typeof exception !== "object" || exception === null)
120
+ return false;
121
+ const e = exception;
122
+ if (e.name === "TimeoutError" || e.name === "NetworkError")
123
+ return true;
124
+ if (typeof e.code === "string" && CONNECTIVITY_ERROR_CODES.has(e.code))
125
+ return true;
126
+ if (exception instanceof TypeError && typeof e.message === "string") {
127
+ if (/fetch failed|network|connect/i.test(e.message))
128
+ return true;
129
+ }
130
+ if (e.cause !== undefined && e.cause !== exception)
131
+ return isConnectivityError(e.cause);
132
+ return false;
133
+ }
134
+ /**
135
+ * Classify an HTTP status code.
136
+ *
137
+ * @param statusCode The HTTP status code reported by the provider.
138
+ * @returns The matching category, or `ErrorCategory.UNKNOWN` if the code carries
139
+ * no provider-independent meaning.
140
+ */
141
+ export function classifyHttpStatusCode(statusCode) {
142
+ const category = HTTP_STATUS_CODE_CATEGORIES.get(statusCode);
143
+ if (category) {
144
+ return category;
145
+ }
146
+ if (statusCode >= 500 && statusCode < 600) {
147
+ return ErrorCategory.SERVER;
148
+ }
149
+ return ErrorCategory.UNKNOWN;
150
+ }
151
+ function getAttr(obj, name) {
152
+ if ((typeof obj !== "object" && typeof obj !== "function") || obj === null)
153
+ return undefined;
154
+ return obj[name];
155
+ }
156
+ /**
157
+ * Extract an HTTP status code from an exception, if it carries one.
158
+ *
159
+ * Recognizes the attribute shapes used by the HTTP and websocket libraries
160
+ * services build on: a `response` holding `status_code` / `statusCode` or
161
+ * `status` (e.g. a fetch `Response`), and those same attributes directly on
162
+ * the exception (provider SDKs).
163
+ *
164
+ * @param exception The exception to inspect.
165
+ * @returns The status code, or null if the exception doesn't carry one.
166
+ */
167
+ export function extractHttpStatusCode(exception) {
168
+ const response = getAttr(exception, "response");
169
+ const candidates = [
170
+ getAttr(response, "status_code"),
171
+ getAttr(response, "statusCode"),
172
+ getAttr(response, "status"),
173
+ getAttr(exception, "status_code"),
174
+ getAttr(exception, "statusCode"),
175
+ getAttr(exception, "status"),
176
+ ];
177
+ for (const candidate of candidates) {
178
+ if (typeof candidate === "number" && Number.isInteger(candidate)) {
179
+ return candidate;
180
+ }
181
+ }
182
+ return null;
183
+ }
184
+ /**
185
+ * Classify an exception by the HTTP status code it carries.
186
+ *
187
+ * @param exception The exception to classify.
188
+ * @returns The matching category, or `ErrorCategory.UNKNOWN` when the exception is
189
+ * not recognized. Providers that throw SDK-specific exceptions carrying no
190
+ * status code need their own classification.
191
+ */
192
+ export function classifyHttpException(exception) {
193
+ const statusCode = extractHttpStatusCode(exception);
194
+ if (statusCode !== null) {
195
+ return classifyHttpStatusCode(statusCode);
196
+ }
197
+ if (isConnectivityError(exception)) {
198
+ return ErrorCategory.CONNECTIVITY;
199
+ }
200
+ return ErrorCategory.UNKNOWN;
201
+ }
202
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1,126 @@
1
+ import { type FileStorage } from "./file_storage.ts";
2
+ import { IPNetwork, UrlReachability } from "./security/ssrf.ts";
3
+ /** Raised when a file URL in the LLM context cannot be resolved to bytes. */
4
+ export declare class FileResolverError extends Error {
5
+ name: string;
6
+ }
7
+ export interface FileResolverOptions {
8
+ /**
9
+ * Storage backend used to resolve URLs it minted (e.g. `pipecat:<id>` from
10
+ * the development runner's upload endpoints — pass `runnerArgs.fileStorage`
11
+ * there). Without it, only `data:` and `http(s)` URLs can be resolved.
12
+ */
13
+ fileStorage?: FileStorage | null;
14
+ /**
15
+ * CIDR ranges (e.g. `["10.0.0.0/8"]`) this server is trusted to fetch from,
16
+ * in addition to the public internet. An `http(s)` URL that resolves outside
17
+ * both is refused. Defaults to the `PIPECAT_ALLOWED_FILE_URL_NETWORKS` env
18
+ * var (comma-separated).
19
+ */
20
+ allowedUrlNetworks?: string[] | null;
21
+ /** Maximum size of a fetched file. */
22
+ maxFetchBytes?: number;
23
+ /** Total timeout for an `http(s)` fetch, in seconds. */
24
+ fetchTimeoutSecs?: number;
25
+ }
26
+ /**
27
+ * Fetches and caches the bytes behind file URLs the LLM provider can't fetch itself.
28
+ *
29
+ * Handles three kinds of URL:
30
+ *
31
+ * - `data:` URLs are decoded directly.
32
+ * - `http(s)` URLs are fetched by this server, but only when the resolved
33
+ * address is publicly routable or falls within `allowedUrlNetworks` —
34
+ * a client-supplied URL must not be able to point this server at arbitrary
35
+ * private address space (SSRF). Redirects are refused rather than followed.
36
+ * - Any other scheme is delegated to `fileStorage`, which resolves the
37
+ * URLs it minted (`pipecat:<id>` for `LocalFileStorage`; a custom backend
38
+ * resolves whatever `save()` returned, e.g. `gs://` with the deployment's
39
+ * own credentials).
40
+ *
41
+ * Each URL is fetched once and served from the cache afterwards: a URL is
42
+ * assumed to identify one immutable piece of content, the same assumption
43
+ * the rest of the web's caches make. Content that changes should live at a
44
+ * new URL (uploads through the development runner mint a fresh URL per
45
+ * upload; a cache-busting query string works for external URLs), or use
46
+ * `forget` when the application knows a URL's content changed. Note the flip
47
+ * side for URLs a provider consumes directly: the provider fetches those
48
+ * itself, on its own schedule, so their freshness is out of this resolver's
49
+ * hands entirely.
50
+ *
51
+ * A stored file whose backend sets `deleteAfterLoad` is deleted only after
52
+ * its bytes are cached, so the cache entry becomes the surviving copy — which
53
+ * is why LLM services that may consume the same files (e.g. services switched
54
+ * between mid-session) should share one resolver instance rather than each
55
+ * constructing their own. Scope a resolver to one session: an instance shared
56
+ * across sessions would hold every session's files in memory and stretch the
57
+ * one-fetch-per-URL assumption across all of them.
58
+ *
59
+ * Subclass and override `fetch` to support additional schemes or
60
+ * credentialed fetches beyond what the storage backend provides.
61
+ */
62
+ export declare class FileResolver {
63
+ protected _fileStorage: FileStorage | null;
64
+ protected _allowedUrlNetworks: IPNetwork[];
65
+ protected _maxFetchBytes: number;
66
+ protected _fetchTimeoutSecs: number;
67
+ protected _bytesCache: Map<string, Uint8Array<ArrayBufferLike>>;
68
+ protected _dataUrlCache: Map<string, string>;
69
+ protected _reachabilityCache: Map<string, UrlReachability>;
70
+ constructor(options?: FileResolverOptions);
71
+ /** The storage backend used to resolve URLs it minted, if any. */
72
+ get fileStorage(): FileStorage | null;
73
+ /** Return the cached bytes for `url`, or null if it hasn't been fetched. */
74
+ cachedBytes(url: string): Uint8Array | null;
75
+ /**
76
+ * Return the cached `data:` form for `url`, or null if not prepared.
77
+ *
78
+ * A `data:` URL is its own data-URL form.
79
+ */
80
+ cachedDataUrl(url: string): string | null;
81
+ /** Return the cached reachability verdict for `url`, or null if unclassified. */
82
+ cachedReachability(url: string): UrlReachability | null;
83
+ /**
84
+ * Drop everything cached for `url`, forcing a re-fetch on next use.
85
+ *
86
+ * For applications that know a URL's content has changed. A forgotten
87
+ * `deleteAfterLoad` upload can't be re-fetched — its stored copy was
88
+ * deleted when first cached — so forgetting one makes it unresolvable.
89
+ *
90
+ * @param url The URL whose cached content and reachability to drop.
91
+ */
92
+ forget(url: string): void;
93
+ /**
94
+ * Classify who can reach an `http(s)` URL, honoring `allowedUrlNetworks`.
95
+ *
96
+ * Classified once per URL; later calls return the cached verdict.
97
+ */
98
+ classify(url: string): Promise<UrlReachability>;
99
+ /**
100
+ * Return the bytes behind `url`, fetching and caching them on first use.
101
+ *
102
+ * @param url A `data:` URL, an `http(s)` URL, or a URL minted by the
103
+ * configured storage backend. A storage-resolved file is deleted after a
104
+ * successful load when the backend sets `deleteAfterLoad` — the bytes are
105
+ * cached first, so the cache entry becomes the surviving copy.
106
+ * @throws FileResolverError If the URL is refused by the reachability
107
+ * policy, exceeds the size limit, fails to download, or has a scheme
108
+ * nothing is configured to resolve.
109
+ */
110
+ fetch(url: string): Promise<Uint8Array>;
111
+ /**
112
+ * Return the `data:` form of `url`'s bytes, encoding and caching it on first use.
113
+ *
114
+ * For adapters whose provider consumes base64 rather than raw bytes, so
115
+ * the encode happens once rather than on every context conversion.
116
+ *
117
+ * @param url A URL whose bytes are cached or fetchable — see `fetch`.
118
+ * @param mimeType The file's MIME type, used in the data URL.
119
+ * @throws FileResolverError If the bytes can't be fetched.
120
+ */
121
+ ensureDataUrl(url: string, mimeType: string): Promise<string>;
122
+ protected _fetchUncached(url: string): Promise<Uint8Array>;
123
+ protected static _decodeDataUrl(url: string): Uint8Array;
124
+ protected _fetchHttp(url: string): Promise<Uint8Array>;
125
+ }
126
+ //# sourceMappingURL=file_resolver.d.ts.map