@dxos/plugin-transcription 0.8.4-main.abd8ff62ef → 0.8.4-main.bc2380dfbc

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 (262) hide show
  1. package/LICENSE +102 -5
  2. package/README.md +1 -1
  3. package/dist/lib/neutral/TranscriptionArticle-L6XANBH5.mjs +54 -0
  4. package/dist/lib/neutral/TranscriptionArticle-L6XANBH5.mjs.map +7 -0
  5. package/dist/lib/neutral/TranscriptionPlugin.mjs +34 -0
  6. package/dist/lib/neutral/TranscriptionPlugin.mjs.map +7 -0
  7. package/dist/lib/neutral/TranscriptionPlugin.node.mjs +25 -0
  8. package/dist/lib/neutral/TranscriptionPlugin.node.mjs.map +7 -0
  9. package/dist/lib/neutral/TranscriptionPlugin.workerd.mjs +21 -0
  10. package/dist/lib/neutral/TranscriptionPlugin.workerd.mjs.map +7 -0
  11. package/dist/lib/neutral/blueprint-definition-HOXDG5QP.mjs +15 -0
  12. package/dist/lib/neutral/blueprint-definition-HOXDG5QP.mjs.map +7 -0
  13. package/dist/lib/neutral/blueprints/index.mjs +8 -0
  14. package/dist/lib/neutral/capabilities/index.mjs +17 -0
  15. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  16. package/dist/lib/{browser/chunk-NQQK7UZQ.mjs → neutral/chunk-2O3ONPRZ.mjs} +94 -40
  17. package/dist/lib/neutral/chunk-2O3ONPRZ.mjs.map +7 -0
  18. package/dist/lib/{browser/chunk-L4HW35L6.mjs → neutral/chunk-5FXU36PN.mjs} +19 -10
  19. package/dist/lib/neutral/chunk-5FXU36PN.mjs.map +7 -0
  20. package/dist/lib/neutral/chunk-GL4RS533.mjs +22 -0
  21. package/dist/lib/neutral/chunk-GL4RS533.mjs.map +7 -0
  22. package/dist/lib/{browser/index.mjs → neutral/chunk-ILSA3DU7.mjs} +32 -70
  23. package/dist/lib/neutral/chunk-ILSA3DU7.mjs.map +7 -0
  24. package/dist/lib/neutral/chunk-Y5EQAFFR.mjs +8 -0
  25. package/dist/lib/neutral/chunk-Y5EQAFFR.mjs.map +7 -0
  26. package/dist/lib/{browser/blueprints/index.mjs → neutral/chunk-ZR4BH4QQ.mjs} +4 -5
  27. package/dist/lib/neutral/chunk-ZR4BH4QQ.mjs.map +7 -0
  28. package/dist/lib/{browser → neutral}/components/index.mjs +83 -18
  29. package/dist/lib/neutral/components/index.mjs.map +7 -0
  30. package/dist/lib/neutral/containers/index.mjs +9 -0
  31. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  32. package/dist/lib/{browser/create-ULR5DPJZ.mjs → neutral/create-RRWRIUSR.mjs} +4 -4
  33. package/dist/lib/neutral/create-RRWRIUSR.mjs.map +7 -0
  34. package/dist/lib/{browser → neutral}/hooks/index.mjs +5 -3
  35. package/dist/lib/neutral/index.mjs +44 -0
  36. package/dist/lib/neutral/meta.json +1 -0
  37. package/dist/lib/neutral/meta.mjs +8 -0
  38. package/dist/lib/{browser/open-SFMPLZVW.mjs → neutral/open-CVMX5KXZ.mjs} +5 -5
  39. package/dist/lib/neutral/open-CVMX5KXZ.mjs.map +7 -0
  40. package/dist/lib/neutral/operation-handler-NXMOAXFP.mjs +13 -0
  41. package/dist/lib/neutral/operation-handler-NXMOAXFP.mjs.map +7 -0
  42. package/dist/lib/neutral/operations/index.mjs +8 -0
  43. package/dist/lib/neutral/plugin.mjs +16 -0
  44. package/dist/lib/neutral/plugin.mjs.map +7 -0
  45. package/dist/lib/neutral/react-surface-YMZRO242.mjs +26 -0
  46. package/dist/lib/neutral/react-surface-YMZRO242.mjs.map +7 -0
  47. package/dist/lib/{browser/summarize-BDFX4APN.mjs → neutral/summarize-LA7TRW7A.mjs} +5 -5
  48. package/dist/lib/neutral/summarize-LA7TRW7A.mjs.map +7 -0
  49. package/dist/lib/neutral/text-content-F4ASMITB.mjs +30 -0
  50. package/dist/lib/neutral/text-content-F4ASMITB.mjs.map +7 -0
  51. package/dist/lib/neutral/transcriber-ABHATBVH.mjs +59 -0
  52. package/dist/lib/neutral/transcriber-ABHATBVH.mjs.map +7 -0
  53. package/dist/lib/neutral/translations.mjs +24 -0
  54. package/dist/lib/neutral/translations.mjs.map +7 -0
  55. package/dist/lib/neutral/types/index.mjs +10 -0
  56. package/dist/lib/neutral/types/index.mjs.map +7 -0
  57. package/dist/types/src/TranscriptionPlugin.d.ts.map +1 -1
  58. package/dist/types/src/TranscriptionPlugin.node.d.ts.map +1 -1
  59. package/dist/types/src/TranscriptionPlugin.workerd.d.ts +4 -0
  60. package/dist/types/src/TranscriptionPlugin.workerd.d.ts.map +1 -0
  61. package/dist/types/src/capabilities/index.d.ts +5 -1
  62. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  63. package/dist/types/src/capabilities/text-content.d.ts +8 -0
  64. package/dist/types/src/capabilities/text-content.d.ts.map +1 -0
  65. package/dist/types/src/components/Oracle/Oracle.d.ts +24 -0
  66. package/dist/types/src/components/Oracle/Oracle.d.ts.map +1 -0
  67. package/dist/types/src/components/Oracle/Oracle.stories.d.ts +32 -0
  68. package/dist/types/src/components/Oracle/Oracle.stories.d.ts.map +1 -0
  69. package/dist/types/src/components/Oracle/index.d.ts +2 -0
  70. package/dist/types/src/components/Oracle/index.d.ts.map +1 -0
  71. package/dist/types/src/components/Transcription/Transcription.d.ts +0 -5
  72. package/dist/types/src/components/Transcription/Transcription.d.ts.map +1 -1
  73. package/dist/types/src/components/Transcription/Transcription.stories.d.ts +13 -16
  74. package/dist/types/src/components/Transcription/Transcription.stories.d.ts.map +1 -1
  75. package/dist/types/src/components/index.d.ts +1 -0
  76. package/dist/types/src/components/index.d.ts.map +1 -1
  77. package/dist/types/src/containers/TranscriptionArticle/TranscriptionArticle.d.ts +6 -0
  78. package/dist/types/src/containers/TranscriptionArticle/TranscriptionArticle.d.ts.map +1 -0
  79. package/dist/types/src/containers/TranscriptionArticle/TranscriptionArticle.stories.d.ts +28 -0
  80. package/dist/types/src/containers/TranscriptionArticle/TranscriptionArticle.stories.d.ts.map +1 -0
  81. package/dist/types/src/containers/TranscriptionArticle/index.d.ts +2 -0
  82. package/dist/types/src/containers/TranscriptionArticle/index.d.ts.map +1 -0
  83. package/dist/types/src/containers/index.d.ts +1 -1
  84. package/dist/types/src/containers/index.d.ts.map +1 -1
  85. package/dist/types/src/enrichment/conversation.test.d.ts +2 -0
  86. package/dist/types/src/enrichment/conversation.test.d.ts.map +1 -0
  87. package/dist/types/src/enrichment/operations.d.ts +200 -0
  88. package/dist/types/src/enrichment/operations.d.ts.map +1 -0
  89. package/dist/types/src/enrichment/parser.d.ts +26 -0
  90. package/dist/types/src/enrichment/parser.d.ts.map +1 -0
  91. package/dist/types/src/enrichment/stream-simulator.d.ts +38 -0
  92. package/dist/types/src/enrichment/stream-simulator.d.ts.map +1 -0
  93. package/dist/types/src/hooks/index.d.ts +2 -1
  94. package/dist/types/src/hooks/index.d.ts.map +1 -1
  95. package/dist/types/src/hooks/useFeedModelAdapter.d.ts +12 -0
  96. package/dist/types/src/hooks/useFeedModelAdapter.d.ts.map +1 -0
  97. package/dist/types/src/hooks/useTranscriptionRecording.d.ts +12 -0
  98. package/dist/types/src/hooks/useTranscriptionRecording.d.ts.map +1 -0
  99. package/dist/types/src/index.d.ts +3 -4
  100. package/dist/types/src/index.d.ts.map +1 -1
  101. package/dist/types/src/normalization/message-normalizer.d.ts +7 -5
  102. package/dist/types/src/normalization/message-normalizer.d.ts.map +1 -1
  103. package/dist/types/src/normalization/normalization.d.ts +180 -1
  104. package/dist/types/src/normalization/normalization.d.ts.map +1 -1
  105. package/dist/types/src/operations/create.d.ts +2 -2
  106. package/dist/types/src/operations/create.d.ts.map +1 -1
  107. package/dist/types/src/operations/index.d.ts +0 -1
  108. package/dist/types/src/operations/index.d.ts.map +1 -1
  109. package/dist/types/src/operations/open.d.ts +2 -2
  110. package/dist/types/src/operations/open.d.ts.map +1 -1
  111. package/dist/types/src/operations/summarize.d.ts +2 -2
  112. package/dist/types/src/operations/summarize.d.ts.map +1 -1
  113. package/dist/types/src/plugin.d.ts +4 -0
  114. package/dist/types/src/plugin.d.ts.map +1 -0
  115. package/dist/types/src/stories/FileTranscription.stories.d.ts +5 -3
  116. package/dist/types/src/stories/FileTranscription.stories.d.ts.map +1 -1
  117. package/dist/types/src/stories/KeyWordRecognition.stories.d.ts.map +1 -1
  118. package/dist/types/src/stories/{MicrophoneTranscription.stories.d.ts → LiveTranscription.stories.d.ts} +4 -4
  119. package/dist/types/src/stories/LiveTranscription.stories.d.ts.map +1 -0
  120. package/dist/types/src/stories/TranscriptionStory.d.ts +11 -13
  121. package/dist/types/src/stories/TranscriptionStory.d.ts.map +1 -1
  122. package/dist/types/src/stories/common.d.ts +46 -0
  123. package/dist/types/src/stories/common.d.ts.map +1 -0
  124. package/dist/types/src/testing/testing.d.ts +5 -6
  125. package/dist/types/src/testing/testing.d.ts.map +1 -1
  126. package/dist/types/src/transcriber/transcriber.d.ts +4 -4
  127. package/dist/types/src/transcriber/transcriber.d.ts.map +1 -1
  128. package/dist/types/src/transcriber/transcription-manager.d.ts +6 -4
  129. package/dist/types/src/transcriber/transcription-manager.d.ts.map +1 -1
  130. package/dist/types/src/translations.d.ts +2 -0
  131. package/dist/types/src/translations.d.ts.map +1 -1
  132. package/dist/types/src/{operations/definitions.d.ts → types/TranscriptOperation.d.ts} +1 -1
  133. package/dist/types/src/types/TranscriptOperation.d.ts.map +1 -0
  134. package/dist/types/src/types/TranscriptionCapabilities.d.ts +17 -0
  135. package/dist/types/src/types/TranscriptionCapabilities.d.ts.map +1 -0
  136. package/dist/types/src/types/index.d.ts +2 -2
  137. package/dist/types/src/types/index.d.ts.map +1 -1
  138. package/dist/types/tsconfig.tsbuildinfo +1 -1
  139. package/package.json +125 -94
  140. package/src/TranscriptionPlugin.node.ts +3 -31
  141. package/src/TranscriptionPlugin.test.ts +3 -3
  142. package/src/TranscriptionPlugin.tsx +3 -31
  143. package/src/TranscriptionPlugin.workerd.ts +18 -0
  144. package/src/blueprints/transcription-blueprint.ts +1 -1
  145. package/src/capabilities/index.ts +1 -0
  146. package/src/capabilities/react-surface.tsx +2 -2
  147. package/src/capabilities/text-content.ts +33 -0
  148. package/src/capabilities/transcriber.ts +1 -1
  149. package/src/components/Oracle/Oracle.stories.tsx +147 -0
  150. package/src/components/Oracle/Oracle.tsx +141 -0
  151. package/src/components/Oracle/index.ts +5 -0
  152. package/src/components/Transcription/Transcription.stories.tsx +116 -150
  153. package/src/components/Transcription/Transcription.tsx +7 -13
  154. package/src/components/index.ts +1 -0
  155. package/src/containers/TranscriptionArticle/TranscriptionArticle.stories.tsx +61 -0
  156. package/src/containers/TranscriptionArticle/TranscriptionArticle.tsx +62 -0
  157. package/src/containers/TranscriptionArticle/index.ts +5 -0
  158. package/src/containers/index.ts +1 -1
  159. package/src/enrichment/conversation.test.ts +162 -0
  160. package/src/enrichment/conversation.txt +23 -0
  161. package/src/enrichment/operations.ts +268 -0
  162. package/src/enrichment/parser.ts +101 -0
  163. package/src/enrichment/stream-simulator.ts +125 -0
  164. package/src/hooks/index.ts +2 -1
  165. package/src/hooks/useFeedModelAdapter.ts +46 -0
  166. package/src/hooks/useTranscriptionRecording.ts +87 -0
  167. package/src/index.ts +3 -9
  168. package/src/normalization/message-normalizer.ts +25 -13
  169. package/src/normalization/normalization.test.ts +3 -37
  170. package/src/normalization/normalization.ts +6 -7
  171. package/src/operations/create.ts +2 -2
  172. package/src/operations/index.ts +0 -2
  173. package/src/operations/open.ts +2 -2
  174. package/src/operations/summarize.ts +3 -3
  175. package/src/plugin.ts +11 -0
  176. package/src/stories/FileTranscription.stories.tsx +49 -175
  177. package/src/stories/KeyWordRecognition.stories.tsx +7 -9
  178. package/src/stories/LiveTranscription.stories.tsx +153 -0
  179. package/src/stories/TranscriptionStory.tsx +32 -24
  180. package/src/stories/common.ts +233 -0
  181. package/src/testing/testing.ts +20 -27
  182. package/src/transcriber/transcriber.test.ts +9 -9
  183. package/src/transcriber/transcriber.ts +18 -14
  184. package/src/transcriber/transcription-manager.ts +14 -9
  185. package/src/translations.ts +3 -0
  186. package/src/{operations/definitions.ts → types/TranscriptOperation.ts} +2 -0
  187. package/src/types/TranscriptionCapabilities.ts +39 -0
  188. package/src/types/index.ts +2 -2
  189. package/dist/lib/browser/blueprints/index.mjs.map +0 -7
  190. package/dist/lib/browser/chunk-3L623EVL.mjs +0 -17
  191. package/dist/lib/browser/chunk-3L623EVL.mjs.map +0 -7
  192. package/dist/lib/browser/chunk-L4HW35L6.mjs.map +0 -7
  193. package/dist/lib/browser/chunk-NQQK7UZQ.mjs.map +0 -7
  194. package/dist/lib/browser/components/index.mjs.map +0 -7
  195. package/dist/lib/browser/create-ULR5DPJZ.mjs.map +0 -7
  196. package/dist/lib/browser/index.mjs.map +0 -7
  197. package/dist/lib/browser/meta.json +0 -1
  198. package/dist/lib/browser/open-SFMPLZVW.mjs.map +0 -7
  199. package/dist/lib/browser/operations/index.mjs +0 -13
  200. package/dist/lib/browser/operations/index.mjs.map +0 -7
  201. package/dist/lib/browser/summarize-BDFX4APN.mjs.map +0 -7
  202. package/dist/lib/browser/types/index.mjs +0 -10
  203. package/dist/lib/node-esm/blueprints/index.mjs +0 -32
  204. package/dist/lib/node-esm/blueprints/index.mjs.map +0 -7
  205. package/dist/lib/node-esm/chunk-7UIZWCD4.mjs +0 -112
  206. package/dist/lib/node-esm/chunk-7UIZWCD4.mjs.map +0 -7
  207. package/dist/lib/node-esm/chunk-C3AE2NYJ.mjs +0 -181
  208. package/dist/lib/node-esm/chunk-C3AE2NYJ.mjs.map +0 -7
  209. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +0 -11
  210. package/dist/lib/node-esm/chunk-KO3IOD2O.mjs +0 -19
  211. package/dist/lib/node-esm/chunk-KO3IOD2O.mjs.map +0 -7
  212. package/dist/lib/node-esm/chunk-MQK4R6GT.mjs +0 -245
  213. package/dist/lib/node-esm/chunk-MQK4R6GT.mjs.map +0 -7
  214. package/dist/lib/node-esm/chunk-O533NBMK.mjs +0 -37
  215. package/dist/lib/node-esm/chunk-O533NBMK.mjs.map +0 -7
  216. package/dist/lib/node-esm/components/index.mjs +0 -208
  217. package/dist/lib/node-esm/components/index.mjs.map +0 -7
  218. package/dist/lib/node-esm/create-A5QHNWRF.mjs +0 -22
  219. package/dist/lib/node-esm/create-A5QHNWRF.mjs.map +0 -7
  220. package/dist/lib/node-esm/hooks/index.mjs +0 -18
  221. package/dist/lib/node-esm/index.mjs +0 -474
  222. package/dist/lib/node-esm/index.mjs.map +0 -7
  223. package/dist/lib/node-esm/meta.json +0 -1
  224. package/dist/lib/node-esm/open-OI24QNTO.mjs +0 -28
  225. package/dist/lib/node-esm/open-OI24QNTO.mjs.map +0 -7
  226. package/dist/lib/node-esm/operations/index.mjs +0 -14
  227. package/dist/lib/node-esm/operations/index.mjs.map +0 -7
  228. package/dist/lib/node-esm/summarize-3UNN24I2.mjs +0 -79
  229. package/dist/lib/node-esm/summarize-3UNN24I2.mjs.map +0 -7
  230. package/dist/lib/node-esm/types/index.mjs +0 -11
  231. package/dist/types/src/containers/TranscriptionContainer/TranscriptionContainer.d.ts +0 -6
  232. package/dist/types/src/containers/TranscriptionContainer/TranscriptionContainer.d.ts.map +0 -1
  233. package/dist/types/src/containers/TranscriptionContainer/index.d.ts +0 -2
  234. package/dist/types/src/containers/TranscriptionContainer/index.d.ts.map +0 -1
  235. package/dist/types/src/hooks/useQueueModelAdapter.d.ts +0 -8
  236. package/dist/types/src/hooks/useQueueModelAdapter.d.ts.map +0 -1
  237. package/dist/types/src/operations/definitions.d.ts.map +0 -1
  238. package/dist/types/src/stories/MicrophoneTranscription.stories.d.ts.map +0 -1
  239. package/dist/types/src/stories/useIsSpeaking.d.ts +0 -3
  240. package/dist/types/src/stories/useIsSpeaking.d.ts.map +0 -1
  241. package/dist/types/src/types/capabilities.d.ts +0 -19
  242. package/dist/types/src/types/capabilities.d.ts.map +0 -1
  243. package/dist/types/src/types/defs.d.ts +0 -5
  244. package/dist/types/src/types/defs.d.ts.map +0 -1
  245. package/src/containers/TranscriptionContainer/TranscriptionContainer.tsx +0 -35
  246. package/src/containers/TranscriptionContainer/index.ts +0 -5
  247. package/src/hooks/useQueueModelAdapter.ts +0 -66
  248. package/src/stories/MicrophoneTranscription.stories.tsx +0 -264
  249. package/src/stories/useIsSpeaking.tsx +0 -40
  250. package/src/types/capabilities.ts +0 -39
  251. package/src/types/defs.ts +0 -9
  252. /package/dist/lib/{browser/hooks → neutral/blueprints}/index.mjs.map +0 -0
  253. /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs +0 -0
  254. /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs.map +0 -0
  255. /package/dist/lib/{browser → neutral}/chunk-KAEXRX3Y.mjs +0 -0
  256. /package/dist/lib/{browser → neutral}/chunk-KAEXRX3Y.mjs.map +0 -0
  257. /package/dist/lib/{browser → neutral}/chunk-MLRJWAQH.mjs +0 -0
  258. /package/dist/lib/{browser → neutral}/chunk-MLRJWAQH.mjs.map +0 -0
  259. /package/dist/lib/{browser/types → neutral/hooks}/index.mjs.map +0 -0
  260. /package/dist/lib/{node-esm/hooks → neutral}/index.mjs.map +0 -0
  261. /package/dist/lib/{node-esm/chunk-HSLMI22Q.mjs.map → neutral/meta.mjs.map} +0 -0
  262. /package/dist/lib/{node-esm/types → neutral/operations}/index.mjs.map +0 -0
@@ -0,0 +1,26 @@
1
+ export type ConversationEntity = {
2
+ /** Type name as written in the fixture, e.g. `Person`, `Organization`. */
3
+ kind: string;
4
+ /** Free-form field values; consumers map these to the relevant ECHO schema. */
5
+ fields: Record<string, string>;
6
+ };
7
+ export type ConversationUtterance = {
8
+ /** Speaker label as written in the fixture (e.g. `A`, `B`, `Rich`). */
9
+ speaker: string;
10
+ /** Raw utterance text. */
11
+ text: string;
12
+ };
13
+ export type ParsedConversation = {
14
+ entities: ConversationEntity[];
15
+ utterances: ConversationUtterance[];
16
+ /** Distinct speaker labels in first-seen order. */
17
+ speakers: string[];
18
+ };
19
+ /**
20
+ * Parse the on-disk conversation format into structured data.
21
+ *
22
+ * Tolerates leading whitespace inside blocks and ignores blank / `#` comment lines.
23
+ * Throws if the input doesn't contain a `Conversation:` block — `Entities:` is optional.
24
+ */
25
+ export declare const parseConversation: (input: string) => ParsedConversation;
26
+ //# sourceMappingURL=parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../../src/enrichment/parser.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,kBAAkB,GAAG;IAC/B,0EAA0E;IAC1E,IAAI,EAAE,MAAM,CAAC;IACb,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,uEAAuE;IACvE,OAAO,EAAE,MAAM,CAAC;IAChB,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IAC/B,UAAU,EAAE,qBAAqB,EAAE,CAAC;IACpC,mDAAmD;IACnD,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,UAAW,MAAM,KAAG,kBAiEjD,CAAC"}
@@ -0,0 +1,38 @@
1
+ import { type ContentBlock } from '@dxos/types';
2
+ import type { ParsedConversation } from './parser';
3
+ export type StreamSimulatorOptions = {
4
+ /**
5
+ * Average speaking rate, words per second. Used to assign a virtual duration to each
6
+ * utterance so consecutive utterances land at realistic offsets.
7
+ * @default 2.5 (≈150 wpm — typical conversational pace)
8
+ */
9
+ wordsPerSecond?: number;
10
+ /**
11
+ * Gap between consecutive utterances in seconds. Models a brief pause for turn-taking
12
+ * even when speakers don't actually overlap.
13
+ * @default 0.5
14
+ */
15
+ gapSeconds?: number;
16
+ /**
17
+ * Whisper batches typically arrive in chunks of N seconds rather than per-utterance.
18
+ * When set, utterances shorter than `batchSeconds` are merged into the same batch as
19
+ * the following utterance from the same speaker. `0` disables merging — every utterance
20
+ * is its own batch.
21
+ * @default 0
22
+ */
23
+ batchSeconds?: number;
24
+ };
25
+ export type SimulatedBatch = {
26
+ /** Speaker label from the fixture (`A`, `B`, …). Maps to a virtual `identityDid`. */
27
+ speaker: string;
28
+ /** ms offset from the conversation start when this batch is delivered. */
29
+ offsetMs: number;
30
+ /** Whisper-shaped transcript blocks (raw text, no enrichment). */
31
+ blocks: ContentBlock.Transcript[];
32
+ };
33
+ /**
34
+ * Build the chronological batch schedule for a parsed conversation. The result is a
35
+ * pure data structure — consumers iterate and drive virtual time themselves.
36
+ */
37
+ export declare const simulateStream: (conversation: ParsedConversation, options?: StreamSimulatorOptions) => SimulatedBatch[];
38
+ //# sourceMappingURL=stream-simulator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stream-simulator.d.ts","sourceRoot":"","sources":["../../../../src/enrichment/stream-simulator.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,KAAK,EAAyB,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE1E,MAAM,MAAM,sBAAsB,GAAG;IACnC;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,qFAAqF;IACrF,OAAO,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAC;IACjB,kEAAkE;IAClE,MAAM,EAAE,YAAY,CAAC,UAAU,EAAE,CAAC;CACnC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,iBACX,kBAAkB,YACvB,sBAAsB,KAC9B,cAAc,EAgEhB,CAAC"}
@@ -1,6 +1,7 @@
1
1
  export * from './useAudioFile';
2
2
  export * from './useAudioTrack';
3
- export * from './useQueueModelAdapter';
3
+ export * from './useFeedModelAdapter';
4
4
  export * from './useTranscriber';
5
+ export * from './useTranscriptionRecording';
5
6
  export * from './useVoiceInput';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/index.ts"],"names":[],"mappings":"AAIA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/index.ts"],"names":[],"mappings":"AAIA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { Obj } from '@dxos/echo';
2
+ import { type ChunkRenderer, SerializationModel } from '../model';
3
+ /**
4
+ * Feeds an array of objects (typically from `useQuery(db, Query.from(feed))`) into a
5
+ * `SerializationModel`, appending each new tail item as the array grows.
6
+ *
7
+ * @param renderer - chunk renderer.
8
+ * @param objects - current snapshot of feed items.
9
+ * @param initialChunks - chunks to seed the model with on first render.
10
+ */
11
+ export declare const useFeedModelAdapter: <T extends Obj.Unknown>(renderer: ChunkRenderer<T>, objects: readonly T[], initialChunks?: T[]) => SerializationModel<T>;
12
+ //# sourceMappingURL=useFeedModelAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFeedModelAdapter.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useFeedModelAdapter.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,KAAK,aAAa,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAElE;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,GAAI,CAAC,SAAS,GAAG,CAAC,OAAO,YAC7C,aAAa,CAAC,CAAC,CAAC,WACjB,SAAS,CAAC,EAAE,kBACN,CAAC,EAAE,KACjB,kBAAkB,CAAC,CAAC,CAuBtB,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { type Transcript } from '@dxos/types';
2
+ export type TranscriptionRecording = {
3
+ recording: boolean;
4
+ toggleRecording: () => void;
5
+ };
6
+ /**
7
+ * Drives the recording lifecycle for a transcript: opens an audio track, feeds it through the
8
+ * transcriber, and appends transcribed message batches to the transcript's feed. Returns the
9
+ * recording flag and a toggle callback for the caller to wire to UI.
10
+ */
11
+ export declare const useTranscriptionRecording: (transcript: Transcript.Transcript) => TranscriptionRecording;
12
+ //# sourceMappingURL=useTranscriptionRecording.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTranscriptionRecording.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useTranscriptionRecording.ts"],"names":[],"mappings":"AAaA,OAAO,EAAW,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAKvD,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,EAAE,OAAO,CAAC;IACnB,eAAe,EAAE,MAAM,IAAI,CAAC;CAC7B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,eAAgB,UAAU,CAAC,UAAU,KAAG,sBA0D7E,CAAC"}
@@ -1,7 +1,6 @@
1
- import { Plugin } from '@dxos/app-framework';
2
- export declare const TranscriptionPlugin: Plugin.PluginFactory<void>;
3
- export { TranscriptionCapabilities } from './types';
4
- export * from './meta';
1
+ export * from './blueprints';
5
2
  export * from './hooks';
3
+ export * from './meta';
6
4
  export * from './transcriber';
5
+ export * from './types';
7
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAI7C,eAAO,MAAM,mBAAmB,4BAA6C,CAAC;AAE9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAIpD,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAMA,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC"}
@@ -1,10 +1,11 @@
1
+ import type * as Runtime from 'effect/Runtime';
1
2
  import { Resource } from '@dxos/context';
2
- import { type Queue } from '@dxos/echo-db';
3
+ import { Feed } from '@dxos/echo';
3
4
  import { type FunctionExecutor } from '@dxos/functions-runtime';
4
- import { type Message } from '@dxos/types';
5
5
  export type SegmentsNormalizerProps = {
6
6
  functionExecutor: FunctionExecutor;
7
- queue: Queue<Message.Message>;
7
+ feed: Feed.Feed;
8
+ feedRuntime: Runtime.Runtime<Feed.FeedService>;
8
9
  startingCursor: QueueCursor;
9
10
  };
10
11
  export type QueueCursor = {
@@ -13,12 +14,13 @@ export type QueueCursor = {
13
14
  };
14
15
  export declare class MessageNormalizer extends Resource {
15
16
  private readonly _functionExecutor;
16
- private _queue;
17
+ private _feed;
18
+ private _feedRuntime;
17
19
  private _cursor;
18
20
  private _messagesToProcess;
19
21
  private _normalizationTask?;
20
22
  private _lastProcessedMessageIds?;
21
- constructor({ functionExecutor, queue, startingCursor }: SegmentsNormalizerProps);
23
+ constructor({ functionExecutor, feed, feedRuntime, startingCursor }: SegmentsNormalizerProps);
22
24
  protected _open(): Promise<void>;
23
25
  private _processMessages;
24
26
  private _writeMessages;
@@ -1 +1 @@
1
- {"version":3,"file":"message-normalizer.d.ts","sourceRoot":"","sources":["../../../../src/normalization/message-normalizer.ts"],"names":[],"mappings":"AAKA,OAAO,EAAkB,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAQ3C,MAAM,MAAM,uBAAuB,GAAG;IACpC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9B,cAAc,EAAE,WAAW,CAAC;CAC7B,CAAC;AAGF,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,qBAAa,iBAAkB,SAAQ,QAAQ;IAC7C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IAErD,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,kBAAkB,CAA4B;IACtD,OAAO,CAAC,kBAAkB,CAAC,CAAe;IAC1C,OAAO,CAAC,wBAAwB,CAAC,CAAW;IAE5C,YAAY,EAAE,gBAAgB,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,uBAAuB,EAK/E;IAED,UAAyB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAsB9C;YAGa,gBAAgB;IAgC9B,OAAO,CAAC,cAAc;CAMvB"}
1
+ {"version":3,"file":"message-normalizer.d.ts","sourceRoot":"","sources":["../../../../src/normalization/message-normalizer.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAG/C,OAAO,EAAkB,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,IAAI,EAAU,MAAM,YAAY,CAAC;AAE1C,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAUhE,MAAM,MAAM,uBAAuB,GAAG;IACpC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/C,cAAc,EAAE,WAAW,CAAC;CAC7B,CAAC;AAGF,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,qBAAa,iBAAkB,SAAQ,QAAQ;IAC7C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IAErD,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,YAAY,CAAoC;IACxD,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,kBAAkB,CAA4B;IACtD,OAAO,CAAC,kBAAkB,CAAC,CAAe;IAC1C,OAAO,CAAC,wBAAwB,CAAC,CAAW;IAE5C,YAAY,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,EAAE,cAAc,EAAE,EAAE,uBAAuB,EAM3F;IAED,UAAyB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CA2B9C;YAGa,gBAAgB;YAgChB,cAAc;CAM7B"}
@@ -1,6 +1,184 @@
1
1
  import * as Schema from 'effect/Schema';
2
2
  import { Operation } from '@dxos/compute';
3
- import { SentenceNormalizationOutput, type MessageWithRangeIdType, type SentenceNormalizationInputType } from '../operations/definitions';
3
+ import { TranscriptOperation } from '../types';
4
+ type MessageWithRangeIdType = TranscriptOperation.MessageWithRangeIdType;
5
+ type SentenceNormalizationInputType = TranscriptOperation.SentenceNormalizationInputType;
6
+ declare const SentenceNormalizationOutput: Schema.Struct<{
7
+ sentences: Schema.mutable<Schema.Array$<Schema.mutable<Schema.extend<import("@dxos/echo/Type").Obj<{
8
+ readonly id: string;
9
+ readonly parentMessage?: string | undefined;
10
+ readonly threadId?: string | undefined;
11
+ readonly created: string;
12
+ readonly sender: {
13
+ readonly role?: "assistant" | "tool" | "user" | undefined;
14
+ readonly contact?: import("@dxos/echo/internal").Ref<import("@dxos/echo/Entity").OfKind<import("@dxos/echo/internal").EntityKind.Object> & {
15
+ readonly fullName?: string | undefined;
16
+ readonly preferredName?: string | undefined;
17
+ readonly nickname?: string | undefined;
18
+ readonly image?: string | undefined;
19
+ readonly organization?: import("@dxos/echo/internal").Ref<import("@dxos/echo/Entity").OfKind<import("@dxos/echo/internal").EntityKind.Object> & {
20
+ readonly name?: string | undefined;
21
+ readonly description?: string | undefined;
22
+ readonly status?: "active" | "commit" | "prospect" | "qualified" | "reject" | undefined;
23
+ readonly image?: string | undefined;
24
+ readonly website?: string | undefined;
25
+ } & {
26
+ readonly location?: readonly [number, number, (number | undefined)?] | undefined;
27
+ }> | undefined;
28
+ readonly jobTitle?: string | undefined;
29
+ readonly department?: string | undefined;
30
+ readonly notes?: string | undefined;
31
+ readonly emails?: readonly {
32
+ readonly label?: string | undefined;
33
+ readonly value: string;
34
+ }[] | undefined;
35
+ readonly identities?: readonly {
36
+ readonly label?: string | undefined;
37
+ readonly value: string;
38
+ }[] | undefined;
39
+ readonly phoneNumbers?: readonly {
40
+ readonly label?: string | undefined;
41
+ readonly value: string;
42
+ }[] | undefined;
43
+ readonly addresses?: readonly {
44
+ readonly label?: string | undefined;
45
+ readonly value: {
46
+ readonly street?: string | undefined;
47
+ readonly extended?: string | undefined;
48
+ readonly locality?: string | undefined;
49
+ readonly region?: string | undefined;
50
+ readonly postalCode?: string | undefined;
51
+ readonly postOfficeBoxNumber?: string | undefined;
52
+ readonly country?: string | undefined;
53
+ };
54
+ }[] | undefined;
55
+ readonly urls?: readonly {
56
+ readonly label?: string | undefined;
57
+ readonly value: string;
58
+ }[] | undefined;
59
+ readonly birthday?: string | undefined;
60
+ readonly fields?: readonly {
61
+ readonly category?: string | undefined;
62
+ readonly label: string;
63
+ readonly value: string;
64
+ }[] | undefined;
65
+ } & {
66
+ readonly location?: readonly [number, number, (number | undefined)?] | undefined;
67
+ }> | undefined;
68
+ readonly identityDid?: string | undefined;
69
+ readonly identityKey?: string | undefined;
70
+ readonly email?: string | undefined;
71
+ readonly name?: string | undefined;
72
+ };
73
+ readonly blocks: readonly ({
74
+ readonly _tag: "anchor";
75
+ readonly pending?: boolean | undefined;
76
+ readonly objectId: string;
77
+ readonly version: unknown;
78
+ } | {
79
+ readonly _tag: "file";
80
+ readonly pending?: boolean | undefined;
81
+ readonly url: string;
82
+ readonly name?: string | undefined;
83
+ readonly mediaType?: string | undefined;
84
+ } | {
85
+ readonly _tag: "image";
86
+ readonly pending?: boolean | undefined;
87
+ readonly id?: string | undefined;
88
+ readonly source?: {
89
+ readonly type: "base64";
90
+ readonly mediaType: string;
91
+ readonly data: string;
92
+ } | {
93
+ readonly type: "http";
94
+ readonly url: string;
95
+ } | undefined;
96
+ } | {
97
+ readonly _tag: "json";
98
+ readonly pending?: boolean | undefined;
99
+ readonly disposition?: "cot" | "synthetic" | "user" | "version-pin" | undefined;
100
+ readonly data: string;
101
+ } | {
102
+ readonly _tag: "proposal";
103
+ readonly pending?: boolean | undefined;
104
+ readonly text: string;
105
+ } | {
106
+ readonly _tag: "reasoning";
107
+ readonly pending?: boolean | undefined;
108
+ readonly reasoningText?: string | undefined;
109
+ readonly redactedText?: string | undefined;
110
+ readonly signature?: string | undefined;
111
+ } | {
112
+ readonly _tag: "reference";
113
+ readonly pending?: boolean | undefined;
114
+ readonly reference: import("@dxos/echo/internal").Ref<import("@dxos/echo/Entity").OfKind<import("@dxos/echo/internal").EntityKind.Object> & import("@dxos/echo/Obj").Unknown>;
115
+ } | {
116
+ readonly _tag: "select";
117
+ readonly pending?: boolean | undefined;
118
+ readonly options: string[];
119
+ } | {
120
+ readonly _tag: "status";
121
+ readonly pending?: boolean | undefined;
122
+ readonly statusText: string;
123
+ } | {
124
+ readonly _tag: "suggestion";
125
+ readonly pending?: boolean | undefined;
126
+ readonly text: string;
127
+ } | {
128
+ readonly _tag: "stats";
129
+ readonly pending?: boolean | undefined;
130
+ readonly mimeType?: string | undefined;
131
+ readonly message?: string | undefined;
132
+ readonly model?: string | undefined;
133
+ readonly usage?: {
134
+ readonly inputTokens?: number | undefined;
135
+ readonly outputTokens?: number | undefined;
136
+ readonly totalTokens?: number | undefined;
137
+ } | undefined;
138
+ readonly toolCalls?: number | undefined;
139
+ readonly errors?: number | undefined;
140
+ readonly duration?: number | undefined;
141
+ } | {
142
+ readonly _tag: "text";
143
+ readonly pending?: boolean | undefined;
144
+ readonly mimeType?: string | undefined;
145
+ readonly text: string;
146
+ readonly disposition?: "cot" | "synthetic" | "user" | "version-pin" | undefined;
147
+ } | {
148
+ readonly _tag: "summary";
149
+ readonly pending?: boolean | undefined;
150
+ readonly content: string;
151
+ } | {
152
+ readonly _tag: "toolkit";
153
+ readonly pending?: boolean | undefined;
154
+ } | {
155
+ readonly _tag: "toolCall";
156
+ readonly pending?: boolean | undefined;
157
+ readonly toolCallId: string;
158
+ readonly name: string;
159
+ readonly input: string;
160
+ readonly providerExecuted: boolean;
161
+ } | {
162
+ readonly _tag: "toolResult";
163
+ readonly pending?: boolean | undefined;
164
+ readonly toolCallId: string;
165
+ readonly name: string;
166
+ readonly result?: string | undefined;
167
+ readonly error?: string | undefined;
168
+ readonly providerExecuted: boolean;
169
+ } | {
170
+ readonly _tag: "transcript";
171
+ readonly pending?: boolean | undefined;
172
+ readonly started: string;
173
+ readonly text: string;
174
+ })[];
175
+ readonly properties?: {
176
+ readonly [x: string]: any;
177
+ } | undefined;
178
+ }, Schema.Struct.Fields>, Schema.Struct<{
179
+ rangeId: Schema.optional<Schema.Array$<typeof Schema.String>>;
180
+ }>>>>>;
181
+ }>;
4
182
  export type MessageWithRangeId = MessageWithRangeIdType;
5
183
  /** @deprecated Use SentenceNormalizationInputType */
6
184
  export type NormalizationInput = SentenceNormalizationInputType;
@@ -361,4 +539,5 @@ export declare const sentenceNormalization: Operation.WithHandler<Operation.Defi
361
539
  rangeId?: readonly string[] | undefined;
362
540
  }[];
363
541
  }, never>>;
542
+ export {};
364
543
  //# sourceMappingURL=normalization.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"normalization.d.ts","sourceRoot":"","sources":["../../../../src/normalization/normalization.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAI1C,OAAO,EAEL,2BAA2B,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,8BAA8B,EACpC,MAAM,2BAA2B,CAAC;AAEnC,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,CAAC;AAExD,qDAAqD;AACrD,MAAM,MAAM,kBAAkB,GAAG,8BAA8B,CAAC;AAEhE,kDAAkD;AAClD,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEzF;;;GAGG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAYjC,CAAC"}
1
+ {"version":3,"file":"normalization.d.ts","sourceRoot":"","sources":["../../../../src/normalization/normalization.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAI1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE/C,KAAK,sBAAsB,GAAG,mBAAmB,CAAC,sBAAsB,CAAC;AACzE,KAAK,8BAA8B,GAAG,mBAAmB,CAAC,8BAA8B,CAAC;AACzF,QAAA,MAA+B,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAwB,CAAC;AAEnF,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,CAAC;AAExD,qDAAqD;AACrD,MAAM,MAAM,kBAAkB,GAAG,8BAA8B,CAAC;AAEhE,kDAAkD;AAClD,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEzF;;;GAGG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAYjC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { Operation } from '@dxos/compute';
2
- import { Create } from './definitions';
3
- declare const handler: Operation.WithHandler<typeof Create>;
2
+ import { TranscriptOperation } from '../types';
3
+ declare const handler: Operation.WithHandler<typeof TranscriptOperation.Create>;
4
4
  export default handler;
5
5
  //# sourceMappingURL=create.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../src/operations/create.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAI1C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,MAAM,CASjD,CAAC;eAEa,OAAO"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../src/operations/create.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAI1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE/C,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,mBAAmB,CAAC,MAAM,CASrE,CAAC;eAEa,OAAO"}
@@ -1,4 +1,3 @@
1
1
  import { OperationHandlerSet } from '@dxos/compute';
2
- export * as TranscriptOperation from './definitions';
3
2
  export declare const TranscriptionOperationHandlerSet: OperationHandlerSet.OperationHandlerSet;
4
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/operations/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,KAAK,mBAAmB,MAAM,eAAe,CAAC;AAErD,eAAO,MAAM,gCAAgC,yCAI5C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/operations/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,eAAO,MAAM,gCAAgC,yCAI5C,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { Operation } from '@dxos/compute';
2
- import { Open } from './definitions';
3
- declare const handler: Operation.WithHandler<typeof Open>;
2
+ import { TranscriptOperation } from '../types';
3
+ declare const handler: Operation.WithHandler<typeof TranscriptOperation.Open>;
4
4
  export default handler;
5
5
  //# sourceMappingURL=open.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"open.d.ts","sourceRoot":"","sources":["../../../../src/operations/open.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAK1C,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAErC,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,IAAI,CAY/C,CAAC;eAEa,OAAO"}
1
+ {"version":3,"file":"open.d.ts","sourceRoot":"","sources":["../../../../src/operations/open.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAI1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAG/C,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,mBAAmB,CAAC,IAAI,CAYnE,CAAC;eAEa,OAAO"}
@@ -1,8 +1,8 @@
1
1
  import { Operation } from '@dxos/compute';
2
- import { Summarize } from './definitions';
2
+ import { TranscriptOperation } from '../types';
3
3
  /**
4
4
  * Summarize a transcript of a meeting.
5
5
  */
6
- declare const handler: Operation.WithHandler<typeof Summarize>;
6
+ declare const handler: Operation.WithHandler<typeof TranscriptOperation.Summarize>;
7
7
  export default handler;
8
8
  //# sourceMappingURL=summarize.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"summarize.d.ts","sourceRoot":"","sources":["../../../../src/operations/summarize.ts"],"names":[],"mappings":"AAYA,OAAO,EAAS,SAAS,EAAqB,MAAM,eAAe,CAAC;AAIpE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C;;GAEG;AACH,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,SAAS,CA4CpD,CAAC;eAEa,OAAO"}
1
+ {"version":3,"file":"summarize.d.ts","sourceRoot":"","sources":["../../../../src/operations/summarize.ts"],"names":[],"mappings":"AAYA,OAAO,EAAS,SAAS,EAAqB,MAAM,eAAe,CAAC;AAIpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE/C;;GAEG;AACH,QAAA,MAAM,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,OAAO,mBAAmB,CAAC,SAAS,CA4CxE,CAAC;eAEa,OAAO"}
@@ -0,0 +1,4 @@
1
+ import { Plugin } from '@dxos/app-framework';
2
+ export declare const TranscriptionPlugin: Plugin.PluginFactory<void>;
3
+ export { TranscriptionOperationHandlerSet } from './operations';
4
+ //# sourceMappingURL=plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../src/plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAI7C,eAAO,MAAM,mBAAmB,4BAA6C,CAAC;AAE9E,OAAO,EAAE,gCAAgC,EAAE,MAAM,cAAc,CAAC"}
@@ -1,18 +1,20 @@
1
1
  import { type StoryObj } from '@storybook/react-vite';
2
2
  import React from 'react';
3
3
  import { type MediaStreamRecorderProps, type TranscriberProps } from '../transcriber';
4
- declare const AudioFile: ({ detectSpeaking, audioUrl, normalizeSentences, transcriberConfig, recorderConfig, audioConstraints, }: {
4
+ type DefaultStoryProps = {
5
5
  detectSpeaking?: boolean;
6
6
  normalizeSentences?: boolean;
7
7
  audioUrl: string;
8
8
  transcriberConfig?: TranscriberProps['config'];
9
9
  recorderConfig?: MediaStreamRecorderProps['config'];
10
10
  audioConstraints?: MediaTrackConstraints;
11
- }) => React.JSX.Element;
11
+ };
12
12
  declare const meta: {
13
13
  title: string;
14
+ render: ({ detectSpeaking, audioUrl, normalizeSentences, transcriberConfig, recorderConfig, audioConstraints, }: DefaultStoryProps) => React.JSX.Element;
14
15
  decorators: import("@storybook/react").Decorator[];
15
16
  };
16
17
  export default meta;
17
- export declare const Default: StoryObj<typeof AudioFile>;
18
+ type Story = StoryObj<typeof meta>;
19
+ export declare const Default: Story;
18
20
  //# sourceMappingURL=FileTranscription.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileTranscription.stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/FileTranscription.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAA4D,MAAM,OAAO,CAAC;AAwBjF,OAAO,EAAE,KAAK,wBAAwB,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAMtF,QAAA,MAAM,SAAS,2GAOZ;IACD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC/C,cAAc,CAAC,EAAE,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IACpD,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CAC1C,sBAyJA,CAAC;AAEF,QAAA,MAAM,IAAI;;;CAuBM,CAAC;eAEF,IAAI;AAcnB,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,OAAO,SAAS,CAU9C,CAAC"}
1
+ {"version":3,"file":"FileTranscription.stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/FileTranscription.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAmD,MAAM,OAAO,CAAC;AAIxE,OAAO,EAAE,KAAK,wBAAwB,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAoBtF,KAAK,iBAAiB,GAAG;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC/C,cAAc,CAAC,EAAE,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IACpD,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CAC1C,CAAC;AAgFF,QAAA,MAAM,IAAI;;qHAvEP,iBAAiB;;CA2Ee,CAAC;eAErB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAOrB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"KeyWordRecognition.stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/KeyWordRecognition.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAuC,MAAM,OAAO,CAAC;AAY5D,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAoGF,QAAA,MAAM,IAAI;;2BAlG0B,iBAAiB;;CAsGhB,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,oBAAoB,EAAE,KAIlC,CAAC"}
1
+ {"version":3,"file":"KeyWordRecognition.stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/KeyWordRecognition.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAuC,MAAM,OAAO,CAAC;AAY5D,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAkGF,QAAA,MAAM,IAAI;;2BAhG0B,iBAAiB;;CAoGhB,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,oBAAoB,EAAE,KAIlC,CAAC"}
@@ -3,10 +3,10 @@ import React from 'react';
3
3
  import { type MediaStreamRecorderProps, type TranscriberProps } from '../transcriber';
4
4
  type DefaultStoryProps = {
5
5
  detectSpeaking?: boolean;
6
- transcriberConfig: TranscriberProps['config'];
7
- recorderConfig: MediaStreamRecorderProps['config'];
6
+ transcriberConfig?: TranscriberProps['config'];
7
+ recorderConfig?: MediaStreamRecorderProps['config'];
8
8
  audioConstraints?: MediaTrackConstraints;
9
- entityExtraction: 'none' | 'ner' | 'llm';
9
+ entityExtraction?: 'ner' | 'llm';
10
10
  };
11
11
  declare const meta: {
12
12
  title: string;
@@ -17,4 +17,4 @@ export default meta;
17
17
  type Story = StoryObj<typeof meta>;
18
18
  export declare const Default: Story;
19
19
  export declare const SpeechDetection: Story;
20
- //# sourceMappingURL=MicrophoneTranscription.stories.d.ts.map
20
+ //# sourceMappingURL=LiveTranscription.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LiveTranscription.stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/LiveTranscription.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAyC,MAAM,OAAO,CAAC;AAgB9D,OAAO,EAAE,KAAK,wBAAwB,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAatF,KAAK,iBAAiB,GAAG;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC/C,cAAc,CAAC,EAAE,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IACpD,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;IACzC,gBAAgB,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;CAClC,CAAC;AAqEF,QAAA,MAAM,IAAI;;yGA7DP,iBAAiB;;CAiEiB,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KASrB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAS7B,CAAC"}
@@ -1,23 +1,21 @@
1
- import '@dxos-theme';
2
- import { type Dispatch, type FC, type ReactNode, type RefObject, type SetStateAction } from 'react';
1
+ import React, { type Dispatch, type RefObject, type SetStateAction } from 'react';
3
2
  import { type Message } from '@dxos/types';
4
3
  import { type SerializationModel } from '../model';
4
+ export type TranscriptionStoryProps = {
5
+ audioRef?: RefObject<HTMLAudioElement | null>;
6
+ model: SerializationModel<Message.Message>;
7
+ running: boolean;
8
+ disabled?: boolean;
9
+ uploadAccept?: string;
10
+ onRunningChange: Dispatch<SetStateAction<boolean>>;
11
+ onUpload?: (file: File) => void;
12
+ };
5
13
  /**
6
14
  * Story wrapper that renders a transcript with playback controls, an optional audio file
7
15
  * upload affordance, and a toolbar slot for additional controls.
8
16
  *
9
17
  * @param onUpload - Callback fired when the user picks a local audio file via the upload button.
10
18
  * @param uploadAccept - HTML `accept` filter for the hidden file input. Defaults to `audio/*`.
11
- * @param toolbarSlot - Extra content rendered after the upload button inside the toolbar.
12
19
  */
13
- export declare const TranscriptionStory: FC<{
14
- model: SerializationModel<Message.Message>;
15
- disabled?: boolean;
16
- running: boolean;
17
- onRunningChange: Dispatch<SetStateAction<boolean>>;
18
- audioRef?: RefObject<HTMLAudioElement | null>;
19
- onUpload?: (file: File) => void;
20
- uploadAccept?: string;
21
- toolbarSlot?: ReactNode;
22
- }>;
20
+ export declare const TranscriptionStory: ({ audioRef, model, running, disabled, uploadAccept, onRunningChange, onUpload, }: TranscriptionStoryProps) => React.JSX.Element;
23
21
  //# sourceMappingURL=TranscriptionStory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TranscriptionStory.d.ts","sourceRoot":"","sources":["../../../../src/stories/TranscriptionStory.tsx"],"names":[],"mappings":"AAIA,OAAO,aAAa,CAAC;AAErB,OAAc,EAEZ,KAAK,QAAQ,EACb,KAAK,EAAE,EACP,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,cAAc,EAEpB,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAEnD;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,EAAE,EAAE,CAAC;IAClC,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IACnD,QAAQ,CAAC,EAAE,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IAC9C,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,SAAS,CAAC;CACzB,CAqDA,CAAC"}
1
+ {"version":3,"file":"TranscriptionStory.d.ts","sourceRoot":"","sources":["../../../../src/stories/TranscriptionStory.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAEZ,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,cAAc,EAGpB,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAEnD,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IAC9C,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IACnD,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;CACjC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,qFAQ5B,uBAAuB,sBAwDzB,CAAC"}
@@ -0,0 +1,46 @@
1
+ import { type Decorator } from '@storybook/react-vite';
2
+ import { Message } from '@dxos/types';
3
+ import { type TranscriptionCapabilities } from '#types';
4
+ import { type Transcriber, type TranscriberProps } from '../transcriber';
5
+ export declare const useIsSpeaking: (track?: MediaStreamTrack) => boolean;
6
+ /**
7
+ * In-memory message buffer + model adapter for storybook use (production wires up a real
8
+ * space-backed `Feed`). Returns the renderable `model` plus an `appendMessage` callback.
9
+ */
10
+ export declare const useStoryMessageModel: () => {
11
+ model: import("../model").SerializationModel<Message.Message>;
12
+ appendMessage: (message: Message.Message) => void;
13
+ };
14
+ /**
15
+ * Wraps blocks in a `Message.Message` with the given sender and appends it to the local buffer.
16
+ * Provided as a convenience for stories that don't need entity-extraction or custom enrichment.
17
+ */
18
+ export declare const useStoryAppendSegments: (appendMessage: (message: Message.Message) => void, sender?: Message.Message['sender']) => TranscriberProps['onSegments'];
19
+ export type UseStoryTranscriberOptions = Pick<TranscriptionCapabilities.GetTranscriberProps, 'transcriberConfig' | 'recorderConfig' | 'onSegments'> & {
20
+ audioStreamTrack?: MediaStreamTrack;
21
+ /** Whether the user has the toolbar toggle on. */
22
+ running: boolean;
23
+ /** Voice-activity flag — chunks recording only fires while `true`. */
24
+ isSpeaking: boolean;
25
+ };
26
+ /**
27
+ * Drives the transcriber's open/close + chunk-recording lifecycle off `running`,
28
+ * the open flag, and an `isSpeaking` voice-activity gate. Returns the transcriber instance
29
+ * (`undefined` until the capability resolves and an audio track is available).
30
+ */
31
+ export declare const useStoryTranscriber: ({ audioStreamTrack, running, isSpeaking, transcriberConfig, recorderConfig, onSegments, }: UseStoryTranscriberOptions) => Transcriber | undefined;
32
+ export type StoryDecoratorsOptions = {
33
+ /**
34
+ * Enable schema/graph/vector indexes after the client boots; needed for entity-extraction
35
+ * queries over seeded `Person` / `Organization` objects.
36
+ * @default false
37
+ */
38
+ enableVectorIndex?: boolean;
39
+ };
40
+ /**
41
+ * Standard plugin-manager decorator for transcription stories: core plugins,
42
+ * `ClientPlugin` with `Person`/`Organization`/`TestItem` schemas + seeded test data, plus
43
+ * the `PreviewPlugin` and `TranscriptionPlugin`. Toggle `enableVectorIndex` for entity-extraction.
44
+ */
45
+ export declare const createStoryDecorators: ({ enableVectorIndex }?: StoryDecoratorsOptions) => Decorator[];
46
+ //# sourceMappingURL=common.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../src/stories/common.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAevD,OAAO,EAAE,OAAO,EAAwB,MAAM,aAAa,CAAC;AAK5D,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,QAAQ,CAAC;AAExD,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAIzE,eAAO,MAAM,aAAa,WAAY,gBAAgB,YA4BrD,CAAC;AAMF;;;GAGG;AACH,eAAO,MAAM,oBAAoB;;6BAEa,OAAO,CAAC,OAAO;CAG5D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,kBAClB,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,KAAK,IAAI,WACzC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAChC,gBAAgB,CAAC,YAAY,CAY7B,CAAC;AAMJ,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAC3C,yBAAyB,CAAC,mBAAmB,EAC7C,mBAAmB,GAAG,gBAAgB,GAAG,YAAY,CACtD,GAAG;IACF,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,kDAAkD;IAClD,OAAO,EAAE,OAAO,CAAC;IACjB,sEAAsE;IACtE,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,8FAO7B,0BAA0B,KAAG,WAAW,GAAG,SA6C7C,CAAC;AAMF,MAAM,MAAM,sBAAsB,GAAG;IACnC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,2BAAmC,sBAAsB,KAAQ,SAAS,EAsB3G,CAAC"}