@ovok/native 1.6.32 → 1.6.34

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 (259) hide show
  1. package/lib/commonjs/modules/bt-device/constants/device-instruction-pdfs.js +4 -1
  2. package/lib/commonjs/modules/bt-device/constants/device-instruction-pdfs.js.map +1 -1
  3. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-assets.js +3 -1
  4. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-assets.js.map +1 -1
  5. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-entries.js +1 -1
  6. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-entries.js.map +1 -1
  7. package/lib/commonjs/modules/bt-device/constants/supported-devices.js +25 -0
  8. package/lib/commonjs/modules/bt-device/constants/supported-devices.js.map +1 -1
  9. package/lib/commonjs/modules/bt-management/constants/integrated-devices-map.js +2 -1
  10. package/lib/commonjs/modules/bt-management/constants/integrated-devices-map.js.map +1 -1
  11. package/lib/commonjs/modules/bt-management/index.js +77 -0
  12. package/lib/commonjs/modules/bt-management/index.js.map +1 -1
  13. package/lib/commonjs/modules/bt-management/services/background-sync/background-service-uuids.js +4 -0
  14. package/lib/commonjs/modules/bt-management/services/background-sync/background-service-uuids.js.map +1 -1
  15. package/lib/commonjs/modules/bt-management/services/custom/define-custom-device.js +20 -0
  16. package/lib/commonjs/modules/bt-management/services/custom/define-custom-device.js.map +1 -1
  17. package/lib/commonjs/modules/bt-management/services/device-creator.js +7 -1
  18. package/lib/commonjs/modules/bt-management/services/device-creator.js.map +1 -1
  19. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.command-sequencer.js +68 -0
  20. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.command-sequencer.js.map +1 -0
  21. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.device.js +55 -0
  22. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.device.js.map +1 -0
  23. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.frame-parser.js +36 -0
  24. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.frame-parser.js.map +1 -0
  25. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.frame-reader.js +68 -0
  26. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.frame-reader.js.map +1 -0
  27. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.main-services.js +31 -0
  28. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.main-services.js.map +1 -0
  29. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.js +73 -0
  30. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.js.map +1 -0
  31. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.device.js +55 -0
  32. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.device.js.map +1 -0
  33. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.js +53 -0
  34. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.js.map +1 -0
  35. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.js +55 -0
  36. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.js.map +1 -0
  37. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.main-services.js +30 -0
  38. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.main-services.js.map +1 -0
  39. package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js +1 -0
  40. package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
  41. package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js +4 -0
  42. package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
  43. package/lib/commonjs/modules/bt-management/services/devices/checkme/checkme.device.js +57 -0
  44. package/lib/commonjs/modules/bt-management/services/devices/checkme/checkme.device.js.map +1 -0
  45. package/lib/commonjs/modules/bt-management/services/devices/checkme/checkme.protocol.js +263 -0
  46. package/lib/commonjs/modules/bt-management/services/devices/checkme/checkme.protocol.js.map +1 -0
  47. package/lib/commonjs/modules/bt-management/services/devices/checkme/checkme.sequencer.js +255 -0
  48. package/lib/commonjs/modules/bt-management/services/devices/checkme/checkme.sequencer.js.map +1 -0
  49. package/lib/commonjs/modules/bt-management/services/devices/custom/custom.device.js +87 -6
  50. package/lib/commonjs/modules/bt-management/services/devices/custom/custom.device.js.map +1 -1
  51. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.transports.js +3 -0
  52. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.transports.js.map +1 -1
  53. package/lib/commonjs/modules/bt-management/services/devices/measurement-state-machine.js +1 -0
  54. package/lib/commonjs/modules/bt-management/services/devices/measurement-state-machine.js.map +1 -1
  55. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js +4 -0
  56. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js.map +1 -1
  57. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.lepod.js +4 -0
  58. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.lepod.js.map +1 -1
  59. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.oximeters.js +10 -0
  60. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.oximeters.js.map +1 -1
  61. package/lib/commonjs/modules/bt-management/types/clock-sync.js +1 -0
  62. package/lib/commonjs/modules/bt-management/types/clock-sync.js.map +1 -1
  63. package/lib/commonjs/modules/bt-management/types/custom-session-policy.js +2 -0
  64. package/lib/commonjs/modules/bt-management/types/custom-session-policy.js.map +1 -0
  65. package/lib/commonjs/modules/bt-management/types/integrated-devices.js +3 -0
  66. package/lib/commonjs/modules/bt-management/types/integrated-devices.js.map +1 -1
  67. package/lib/module/modules/bt-device/constants/device-instruction-pdfs.js +4 -1
  68. package/lib/module/modules/bt-device/constants/device-instruction-pdfs.js.map +1 -1
  69. package/lib/module/modules/bt-device/constants/supported-device-catalog-assets.js +3 -1
  70. package/lib/module/modules/bt-device/constants/supported-device-catalog-assets.js.map +1 -1
  71. package/lib/module/modules/bt-device/constants/supported-device-catalog-entries.js +1 -1
  72. package/lib/module/modules/bt-device/constants/supported-device-catalog-entries.js.map +1 -1
  73. package/lib/module/modules/bt-device/constants/supported-devices.js +26 -1
  74. package/lib/module/modules/bt-device/constants/supported-devices.js.map +1 -1
  75. package/lib/module/modules/bt-management/constants/integrated-devices-map.js +2 -1
  76. package/lib/module/modules/bt-management/constants/integrated-devices-map.js.map +1 -1
  77. package/lib/module/modules/bt-management/index.js +7 -0
  78. package/lib/module/modules/bt-management/index.js.map +1 -1
  79. package/lib/module/modules/bt-management/services/background-sync/background-service-uuids.js +4 -0
  80. package/lib/module/modules/bt-management/services/background-sync/background-service-uuids.js.map +1 -1
  81. package/lib/module/modules/bt-management/services/custom/define-custom-device.js +20 -0
  82. package/lib/module/modules/bt-management/services/custom/define-custom-device.js.map +1 -1
  83. package/lib/module/modules/bt-management/services/device-creator.js +7 -1
  84. package/lib/module/modules/bt-management/services/device-creator.js.map +1 -1
  85. package/lib/module/modules/bt-management/services/devices/a606/a606.command-sequencer.js +61 -0
  86. package/lib/module/modules/bt-management/services/devices/a606/a606.command-sequencer.js.map +1 -0
  87. package/lib/module/modules/bt-management/services/devices/a606/a606.device.js +45 -0
  88. package/lib/module/modules/bt-management/services/devices/a606/a606.device.js.map +1 -0
  89. package/lib/module/modules/bt-management/services/devices/a606/a606.frame-parser.js +32 -0
  90. package/lib/module/modules/bt-management/services/devices/a606/a606.frame-parser.js.map +1 -0
  91. package/lib/module/modules/bt-management/services/devices/a606/a606.frame-reader.js +63 -0
  92. package/lib/module/modules/bt-management/services/devices/a606/a606.frame-reader.js.map +1 -0
  93. package/lib/module/modules/bt-management/services/devices/a606/a606.main-services.js +28 -0
  94. package/lib/module/modules/bt-management/services/devices/a606/a606.main-services.js.map +1 -0
  95. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.js +66 -0
  96. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.js.map +1 -0
  97. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.device.js +45 -0
  98. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.device.js.map +1 -0
  99. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.js +48 -0
  100. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.js.map +1 -0
  101. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.js +50 -0
  102. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.js.map +1 -0
  103. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.main-services.js +26 -0
  104. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.main-services.js.map +1 -0
  105. package/lib/module/modules/bt-management/services/devices/bt-data-processor.js +1 -0
  106. package/lib/module/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
  107. package/lib/module/modules/bt-management/services/devices/bt-managed-device.js +4 -0
  108. package/lib/module/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
  109. package/lib/module/modules/bt-management/services/devices/checkme/checkme.device.js +53 -0
  110. package/lib/module/modules/bt-management/services/devices/checkme/checkme.device.js.map +1 -0
  111. package/lib/module/modules/bt-management/services/devices/checkme/checkme.protocol.js +247 -0
  112. package/lib/module/modules/bt-management/services/devices/checkme/checkme.protocol.js.map +1 -0
  113. package/lib/module/modules/bt-management/services/devices/checkme/checkme.sequencer.js +245 -0
  114. package/lib/module/modules/bt-management/services/devices/checkme/checkme.sequencer.js.map +1 -0
  115. package/lib/module/modules/bt-management/services/devices/custom/custom.device.js +87 -6
  116. package/lib/module/modules/bt-management/services/devices/custom/custom.device.js.map +1 -1
  117. package/lib/module/modules/bt-management/services/devices/lepu/lepu.transports.js +3 -0
  118. package/lib/module/modules/bt-management/services/devices/lepu/lepu.transports.js.map +1 -1
  119. package/lib/module/modules/bt-management/services/devices/measurement-state-machine.js +1 -0
  120. package/lib/module/modules/bt-management/services/devices/measurement-state-machine.js.map +1 -1
  121. package/lib/module/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js +4 -0
  122. package/lib/module/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js.map +1 -1
  123. package/lib/module/modules/bt-management/services/devices/viatom/viatom.lepod.js +4 -0
  124. package/lib/module/modules/bt-management/services/devices/viatom/viatom.lepod.js.map +1 -1
  125. package/lib/module/modules/bt-management/services/devices/viatom/viatom.oximeters.js +10 -0
  126. package/lib/module/modules/bt-management/services/devices/viatom/viatom.oximeters.js.map +1 -1
  127. package/lib/module/modules/bt-management/types/clock-sync.js +1 -0
  128. package/lib/module/modules/bt-management/types/clock-sync.js.map +1 -1
  129. package/lib/module/modules/bt-management/types/custom-device-definition.js.map +1 -1
  130. package/lib/module/modules/bt-management/types/custom-session-policy.js +2 -0
  131. package/lib/module/modules/bt-management/types/custom-session-policy.js.map +1 -0
  132. package/lib/module/modules/bt-management/types/device-measurement-map.js.map +1 -1
  133. package/lib/module/modules/bt-management/types/integrated-devices.js +3 -0
  134. package/lib/module/modules/bt-management/types/integrated-devices.js.map +1 -1
  135. package/lib/typescript/commonjs/src/modules/bt-device/constants/device-instruction-pdfs.d.ts.map +1 -1
  136. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-assets.d.ts +3 -1
  137. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-assets.d.ts.map +1 -1
  138. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-entries.d.ts.map +1 -1
  139. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-devices.d.ts +7 -0
  140. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-devices.d.ts.map +1 -1
  141. package/lib/typescript/commonjs/src/modules/bt-management/constants/integrated-devices-map.d.ts.map +1 -1
  142. package/lib/typescript/commonjs/src/modules/bt-management/index.d.ts +7 -0
  143. package/lib/typescript/commonjs/src/modules/bt-management/index.d.ts.map +1 -1
  144. package/lib/typescript/commonjs/src/modules/bt-management/services/background-sync/background-service-uuids.d.ts.map +1 -1
  145. package/lib/typescript/commonjs/src/modules/bt-management/services/custom/define-custom-device.d.ts.map +1 -1
  146. package/lib/typescript/commonjs/src/modules/bt-management/services/device-creator.d.ts.map +1 -1
  147. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.command-sequencer.d.ts +22 -0
  148. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.command-sequencer.d.ts.map +1 -0
  149. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.device.d.ts +24 -0
  150. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.device.d.ts.map +1 -0
  151. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.frame-parser.d.ts +10 -0
  152. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.frame-parser.d.ts.map +1 -0
  153. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.frame-reader.d.ts +9 -0
  154. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.frame-reader.d.ts.map +1 -0
  155. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.main-services.d.ts +4 -0
  156. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.main-services.d.ts.map +1 -0
  157. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.d.ts +21 -0
  158. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.d.ts.map +1 -0
  159. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.device.d.ts +22 -0
  160. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.device.d.ts.map +1 -0
  161. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.d.ts +9 -0
  162. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.d.ts.map +1 -0
  163. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.d.ts +8 -0
  164. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.d.ts.map +1 -0
  165. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.main-services.d.ts +4 -0
  166. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.main-services.d.ts.map +1 -0
  167. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-data-processor.d.ts +1 -0
  168. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-data-processor.d.ts.map +1 -1
  169. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts +2 -0
  170. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
  171. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/checkme/checkme.device.d.ts +18 -0
  172. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/checkme/checkme.device.d.ts.map +1 -0
  173. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/checkme/checkme.protocol.d.ts +79 -0
  174. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/checkme/checkme.protocol.d.ts.map +1 -0
  175. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/checkme/checkme.sequencer.d.ts +52 -0
  176. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/checkme/checkme.sequencer.d.ts.map +1 -0
  177. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/custom/custom.device.d.ts +10 -0
  178. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/custom/custom.device.d.ts.map +1 -1
  179. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts +3 -0
  180. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts.map +1 -1
  181. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/measurement-state-machine.d.ts +1 -0
  182. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/measurement-state-machine.d.ts.map +1 -1
  183. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.d.ts.map +1 -1
  184. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.lepod.d.ts.map +1 -1
  185. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.oximeters.d.ts.map +1 -1
  186. package/lib/typescript/commonjs/src/modules/bt-management/types/clock-sync.d.ts.map +1 -1
  187. package/lib/typescript/commonjs/src/modules/bt-management/types/custom-device-definition.d.ts +2 -0
  188. package/lib/typescript/commonjs/src/modules/bt-management/types/custom-device-definition.d.ts.map +1 -1
  189. package/lib/typescript/commonjs/src/modules/bt-management/types/custom-device-spec.d.ts +3 -0
  190. package/lib/typescript/commonjs/src/modules/bt-management/types/custom-device-spec.d.ts.map +1 -1
  191. package/lib/typescript/commonjs/src/modules/bt-management/types/custom-session-policy.d.ts +13 -0
  192. package/lib/typescript/commonjs/src/modules/bt-management/types/custom-session-policy.d.ts.map +1 -0
  193. package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts +8 -0
  194. package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts.map +1 -1
  195. package/lib/typescript/commonjs/src/modules/bt-management/types/integrated-devices.d.ts +4 -1
  196. package/lib/typescript/commonjs/src/modules/bt-management/types/integrated-devices.d.ts.map +1 -1
  197. package/lib/typescript/module/src/modules/bt-device/constants/device-instruction-pdfs.d.ts.map +1 -1
  198. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-assets.d.ts +3 -1
  199. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-assets.d.ts.map +1 -1
  200. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-entries.d.ts.map +1 -1
  201. package/lib/typescript/module/src/modules/bt-device/constants/supported-devices.d.ts +7 -0
  202. package/lib/typescript/module/src/modules/bt-device/constants/supported-devices.d.ts.map +1 -1
  203. package/lib/typescript/module/src/modules/bt-management/constants/integrated-devices-map.d.ts.map +1 -1
  204. package/lib/typescript/module/src/modules/bt-management/index.d.ts +7 -0
  205. package/lib/typescript/module/src/modules/bt-management/index.d.ts.map +1 -1
  206. package/lib/typescript/module/src/modules/bt-management/services/background-sync/background-service-uuids.d.ts.map +1 -1
  207. package/lib/typescript/module/src/modules/bt-management/services/custom/define-custom-device.d.ts.map +1 -1
  208. package/lib/typescript/module/src/modules/bt-management/services/device-creator.d.ts.map +1 -1
  209. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.command-sequencer.d.ts +22 -0
  210. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.command-sequencer.d.ts.map +1 -0
  211. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.device.d.ts +24 -0
  212. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.device.d.ts.map +1 -0
  213. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.frame-parser.d.ts +10 -0
  214. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.frame-parser.d.ts.map +1 -0
  215. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.frame-reader.d.ts +9 -0
  216. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.frame-reader.d.ts.map +1 -0
  217. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.main-services.d.ts +4 -0
  218. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.main-services.d.ts.map +1 -0
  219. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.d.ts +21 -0
  220. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.d.ts.map +1 -0
  221. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.device.d.ts +22 -0
  222. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.device.d.ts.map +1 -0
  223. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.d.ts +9 -0
  224. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.d.ts.map +1 -0
  225. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.d.ts +8 -0
  226. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.d.ts.map +1 -0
  227. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.main-services.d.ts +4 -0
  228. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.main-services.d.ts.map +1 -0
  229. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-data-processor.d.ts +1 -0
  230. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-data-processor.d.ts.map +1 -1
  231. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts +2 -0
  232. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
  233. package/lib/typescript/module/src/modules/bt-management/services/devices/checkme/checkme.device.d.ts +18 -0
  234. package/lib/typescript/module/src/modules/bt-management/services/devices/checkme/checkme.device.d.ts.map +1 -0
  235. package/lib/typescript/module/src/modules/bt-management/services/devices/checkme/checkme.protocol.d.ts +79 -0
  236. package/lib/typescript/module/src/modules/bt-management/services/devices/checkme/checkme.protocol.d.ts.map +1 -0
  237. package/lib/typescript/module/src/modules/bt-management/services/devices/checkme/checkme.sequencer.d.ts +52 -0
  238. package/lib/typescript/module/src/modules/bt-management/services/devices/checkme/checkme.sequencer.d.ts.map +1 -0
  239. package/lib/typescript/module/src/modules/bt-management/services/devices/custom/custom.device.d.ts +10 -0
  240. package/lib/typescript/module/src/modules/bt-management/services/devices/custom/custom.device.d.ts.map +1 -1
  241. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts +3 -0
  242. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts.map +1 -1
  243. package/lib/typescript/module/src/modules/bt-management/services/devices/measurement-state-machine.d.ts +1 -0
  244. package/lib/typescript/module/src/modules/bt-management/services/devices/measurement-state-machine.d.ts.map +1 -1
  245. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.d.ts.map +1 -1
  246. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.lepod.d.ts.map +1 -1
  247. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.oximeters.d.ts.map +1 -1
  248. package/lib/typescript/module/src/modules/bt-management/types/clock-sync.d.ts.map +1 -1
  249. package/lib/typescript/module/src/modules/bt-management/types/custom-device-definition.d.ts +2 -0
  250. package/lib/typescript/module/src/modules/bt-management/types/custom-device-definition.d.ts.map +1 -1
  251. package/lib/typescript/module/src/modules/bt-management/types/custom-device-spec.d.ts +3 -0
  252. package/lib/typescript/module/src/modules/bt-management/types/custom-device-spec.d.ts.map +1 -1
  253. package/lib/typescript/module/src/modules/bt-management/types/custom-session-policy.d.ts +13 -0
  254. package/lib/typescript/module/src/modules/bt-management/types/custom-session-policy.d.ts.map +1 -0
  255. package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts +8 -0
  256. package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts.map +1 -1
  257. package/lib/typescript/module/src/modules/bt-management/types/integrated-devices.d.ts +4 -1
  258. package/lib/typescript/module/src/modules/bt-management/types/integrated-devices.d.ts.map +1 -1
  259. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"define-custom-device.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/custom/define-custom-device.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AA8IlE;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,GAC7B,MAAM,gBAAgB,EACtB,UAAS;IAAE,eAAe,CAAC,EAAE,sBAAsB,CAAA;CAAO,KACzD,sBAsFF,CAAC"}
1
+ {"version":3,"file":"define-custom-device.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/custom/define-custom-device.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAyKlE;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,GAC7B,MAAM,gBAAgB,EACtB,UAAS;IAAE,eAAe,CAAC,EAAE,sBAAsB,CAAA;CAAO,KACzD,sBAwFF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"device-creator.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/services/device-creator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAQrD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AA2E9D,qBAAa,aAAa,CAAC,CAAC,SAAS,SAAS,cAAc,EAAE;IAKhD,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IAJhD,OAAO,CAAC,eAAe,CAAuC;IAC9D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAO;IACtC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsC;gBAEvC,mBAAmB,EAAE,CAAC;IAI5C,aAAa,GAClB,WAAW,MAAM,EACjB,eAAc,SAAS,MAAM,EAAO,KACnC,WAAW,CAAC,CAAC,CAAC,GAAG,SAAS,CAwB3B;IAEK,YAAY,CAAC,CAAC,SAAS,SAAS,EACrC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC5B,eAAe,CAAC,CAAC,CAAC;IA4Cd,OAAO,aAEZ;IAEF;;;OAGG;IACH,OAAO,CAAC,eAAe,CAMP;IAEhB,OAAO,CAAC,eAAe;CAexB"}
1
+ {"version":3,"file":"device-creator.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/services/device-creator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAUrD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AA+E9D,qBAAa,aAAa,CAAC,CAAC,SAAS,SAAS,cAAc,EAAE;IAKhD,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IAJhD,OAAO,CAAC,eAAe,CAAuC;IAC9D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAO;IACtC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsC;gBAEvC,mBAAmB,EAAE,CAAC;IAI5C,aAAa,GAClB,WAAW,MAAM,EACjB,eAAc,SAAS,MAAM,EAAO,KACnC,WAAW,CAAC,CAAC,CAAC,GAAG,SAAS,CAwB3B;IAEK,YAAY,CAAC,CAAC,SAAS,SAAS,EACrC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC5B,eAAe,CAAC,CAAC,CAAC;IA4Cd,OAAO,aAEZ;IAEF;;;OAGG;IACH,OAAO,CAAC,eAAe,CAMP;IAEhB,OAAO,CAAC,eAAe;CAexB"}
@@ -0,0 +1,22 @@
1
+ import { ClockSyncOptions } from "../../../types/clock-sync";
2
+ import { CommandSequencer } from "../../../types/command-sequencer";
3
+ import { DeviceCommand } from "../../../types/device-command";
4
+ declare const SERVICE = "0000ff00-0000-1000-8000-00805f9b34fb";
5
+ declare const WRITE = "0000ff01-0000-1000-8000-00805f9b34fb";
6
+ declare const NOTIFY = "0000ff02-0000-1000-8000-00805f9b34fb";
7
+ /** The vendor's post-connect command for the ZH-SG family. */
8
+ declare const buildA606ConnectedCommand: () => string[];
9
+ /** Writes the local clock in the six-byte YY MM DD hh mm ss payload. */
10
+ declare const buildA606TimeCommand: (now: Date) => string[];
11
+ /** Requests the next stored record after the current one was accepted. */
12
+ declare const buildA606UploadCommand: (ack?: boolean) => string[];
13
+ declare class A606CommandSequencer implements CommandSequencer {
14
+ private readonly clockSync?;
15
+ private phase;
16
+ constructor(clockSync?: ClockSyncOptions | undefined);
17
+ initialCommands: () => readonly DeviceCommand[];
18
+ isHistoryTransfer: () => boolean;
19
+ nextCommand: (frame: readonly string[]) => readonly DeviceCommand[] | undefined;
20
+ }
21
+ export { A606CommandSequencer, buildA606ConnectedCommand, buildA606TimeCommand, buildA606UploadCommand, NOTIFY as A606_NOTIFY, SERVICE as A606_SERVICE, WRITE as A606_WRITE, };
22
+ //# sourceMappingURL=a606.command-sequencer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a606.command-sequencer.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/a606/a606.command-sequencer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAGjB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAG9D,QAAA,MAAM,OAAO,yCAAyC,CAAC;AACvD,QAAA,MAAM,KAAK,yCAAyC,CAAC;AACrD,QAAA,MAAM,MAAM,yCAAyC,CAAC;AA2BtD,8DAA8D;AAC9D,QAAA,MAAM,yBAAyB,QAAO,MAAM,EACiB,CAAC;AAE9D,wEAAwE;AACxE,QAAA,MAAM,oBAAoB,GAAI,KAAK,IAAI,KAAG,MAAM,EAgB/C,CAAC;AAEF,0EAA0E;AAC1E,QAAA,MAAM,sBAAsB,GAAI,aAAW,KAAG,MAAM,EAC2B,CAAC;AAEhF,cAAM,oBAAqB,YAAW,gBAAgB;IAGjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;IAF9C,OAAO,CAAC,KAAK,CAAkD;gBAE3B,SAAS,CAAC,EAAE,gBAAgB,YAAA;IAEzD,eAAe,QAAO,SAAS,aAAa,EAAE,CAEnD;IAEK,iBAAiB,QAAO,OAAO,CAAS;IAExC,WAAW,GAChB,OAAO,SAAS,MAAM,EAAE,KACvB,SAAS,aAAa,EAAE,GAAG,SAAS,CA2BrC;CACH;AAED,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,oBAAoB,EACpB,sBAAsB,EACtB,MAAM,IAAI,WAAW,EACrB,OAAO,IAAI,YAAY,EACvB,KAAK,IAAI,UAAU,GACpB,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { Device } from "react-native-ble-plx";
2
+ import { CreateDeviceParams } from "../../../types/create-device-params";
3
+ import { DependentResultHandlerParams } from "../../../types/dependent-result-handler-params";
4
+ import { MeasurementTypeForDevices } from "../../../types/device-measurement-map";
5
+ import { IntegratedDevices } from "../../../types/integrated-devices";
6
+ import { IService } from "../../../types/service.type";
7
+ import { BTManagedDevice } from "../bt-managed-device";
8
+ import { A606FrameReader } from "./a606.frame-reader";
9
+ import { a606MainServices } from "./a606.main-services";
10
+ type A606Measurement = MeasurementTypeForDevices<[
11
+ IntegratedDevices.ZH_SG_A606
12
+ ]>;
13
+ /** Viatom/Lepu ZH-SG-A606 meter, which uploads stored records after connection. */
14
+ declare class A606Device extends BTManagedDevice<IntegratedDevices.ZH_SG_A606> {
15
+ protected mainServices: IService[];
16
+ protected stuckDataTimeout: number;
17
+ protected onStreamStart: undefined;
18
+ protected frameReader: A606FrameReader;
19
+ constructor(device: Device, params: CreateDeviceParams<IntegratedDevices.ZH_SG_A606>);
20
+ protected handleDependentResult: (data: DependentResultHandlerParams<A606Measurement>) => DependentResultHandlerParams<A606Measurement>;
21
+ protected handleSuccessResult(): void | boolean;
22
+ }
23
+ export { A606Device, a606MainServices };
24
+ //# sourceMappingURL=a606.device.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a606.device.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/a606/a606.device.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAI9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gDAAgD,CAAC;AAC9F,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAEtE,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAIvD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,KAAK,eAAe,GAAG,yBAAyB,CAAC;IAC/C,iBAAiB,CAAC,UAAU;CAC7B,CAAC,CAAC;AAEH,mFAAmF;AACnF,cAAM,UAAW,SAAQ,eAAe,CAAC,iBAAiB,CAAC,UAAU,CAAC;IACpE,SAAS,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAoB;IACtD,SAAS,CAAC,gBAAgB,SAAW;IACrC,SAAS,CAAC,aAAa,YAAa;IACpC,SAAS,CAAC,WAAW,kBAAyB;gBAG5C,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,UAAU,CAAC;IAO1D,SAAS,CAAC,qBAAqB,GAC7B,MAAM,4BAA4B,CAAC,eAAe,CAAC,KAClD,4BAA4B,CAAC,eAAe,CAAC,CAkB9C;IAEF,SAAS,CAAC,mBAAmB,IAAI,IAAI,GAAG,OAAO;CAGhD;AAED,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC"}
@@ -0,0 +1,10 @@
1
+ interface A606Record {
2
+ bloodGlucose: number;
3
+ recordedAt: Date;
4
+ dataPosition: number;
5
+ }
6
+ /** Decodes the 12-byte glucose payload inside a verified 16-byte ZH-SG record. */
7
+ declare const parseA606Record: (frame: readonly string[]) => A606Record | undefined;
8
+ export { parseA606Record };
9
+ export type { A606Record };
10
+ //# sourceMappingURL=a606.frame-parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a606.frame-parser.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/a606/a606.frame-parser.ts"],"names":[],"mappings":"AAEA,UAAU,UAAU;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,IAAI,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB;AAKD,kFAAkF;AAClF,QAAA,MAAM,eAAe,GAAI,OAAO,SAAS,MAAM,EAAE,KAAG,UAAU,GAAG,SA+ChE,CAAC;AAEF,OAAO,EAAE,eAAe,EAAE,CAAC;AAC3B,YAAY,EAAE,UAAU,EAAE,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { FrameReadResult } from "../../../types/frame-read-result";
2
+ import { FrameReader } from "../../../types/frame-reader";
3
+ /** Reads the `& C/D ... checksum` frames used by Viatom's ZH-SG glucose protocol. */
4
+ export declare class A606FrameReader implements FrameReader {
5
+ readFrame(buffer: readonly string[]): FrameReadResult;
6
+ private findStart;
7
+ private hasValidChecksum;
8
+ }
9
+ //# sourceMappingURL=a606.frame-reader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a606.frame-reader.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/a606/a606.frame-reader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAS1D,qFAAqF;AACrF,qBAAa,eAAgB,YAAW,WAAW;IAC1C,SAAS,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,eAAe;IAyC5D,OAAO,CAAC,SAAS;IAYjB,OAAO,CAAC,gBAAgB;CASzB"}
@@ -0,0 +1,4 @@
1
+ import { IService } from "../../../types/service.type";
2
+ /** ZH-SG's fixed GATT profile and its 16-byte stored glucose record. */
3
+ export declare const a606MainServices: IService[];
4
+ //# sourceMappingURL=a606.main-services.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a606.main-services.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/a606/a606.main-services.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAIvD,wEAAwE;AACxE,eAAO,MAAM,gBAAgB,EAAE,QAAQ,EAyBtC,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { CommandSequencer } from "../../../types/command-sequencer";
2
+ import { DeviceCommand } from "../../../types/device-command";
3
+ declare const SERVICE = "81eea003-e735-49ec-8a11-7e32cae1e14e";
4
+ declare const WRITE = "81eea002-e735-49ec-8a11-7e32cae1e14e";
5
+ declare const HISTORY_TYPE = 3;
6
+ /** Builds the vendor's acknowledgement for one accepted LHZL frame. */
7
+ declare const buildBpw1Ack: (frame: readonly string[]) => string[];
8
+ /** ViHealth's initial feature probe for the BPW1 LHZL profile. */
9
+ declare const buildBpw1FeatureCommand: () => string[];
10
+ /** Requests all stored health-history packets after the feature reply. */
11
+ declare const buildBpw1HistoryCommand: (protocolVersion: number) => string[];
12
+ /** Answers the feature probe, then starts the vendor's all-history transfer. */
13
+ declare class Bpw1CommandSequencer implements CommandSequencer {
14
+ private protocolVersion;
15
+ private historyRequested;
16
+ initialCommands: () => readonly DeviceCommand[];
17
+ nextCommand: (frame: readonly string[]) => readonly DeviceCommand[] | undefined;
18
+ isHistoryTransfer: () => boolean;
19
+ }
20
+ export { Bpw1CommandSequencer, buildBpw1Ack, buildBpw1FeatureCommand, buildBpw1HistoryCommand, SERVICE as BPW1_SERVICE, WRITE as BPW1_WRITE, HISTORY_TYPE as BPW1_HISTORY_TYPE, };
21
+ //# sourceMappingURL=bpw1.command-sequencer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bpw1.command-sequencer.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAG9D,QAAA,MAAM,OAAO,yCAAyC,CAAC;AACvD,QAAA,MAAM,KAAK,yCAAyC,CAAC;AAGrD,QAAA,MAAM,YAAY,IAAO,CAAC;AAkD1B,uEAAuE;AACvE,QAAA,MAAM,YAAY,GAAI,OAAO,SAAS,MAAM,EAAE,KAAG,MAAM,EAgBtD,CAAC;AAEF,kEAAkE;AAClE,QAAA,MAAM,uBAAuB,QAAO,MAAM,EACC,CAAC;AAE5C,0EAA0E;AAC1E,QAAA,MAAM,uBAAuB,GAAI,iBAAiB,MAAM,KAAG,MAAM,EACX,CAAC;AAEvD,gFAAgF;AAChF,cAAM,oBAAqB,YAAW,gBAAgB;IACpD,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,gBAAgB,CAAS;IAE1B,eAAe,QAAO,SAAS,aAAa,EAAE,CAEnD;IAEK,WAAW,GAChB,OAAO,SAAS,MAAM,EAAE,KACvB,SAAS,aAAa,EAAE,GAAG,SAAS,CAmBrC;IAEK,iBAAiB,QAAO,OAAO,CAAS;CAChD;AAED,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,uBAAuB,EACvB,uBAAuB,EACvB,OAAO,IAAI,YAAY,EACvB,KAAK,IAAI,UAAU,EACnB,YAAY,IAAI,iBAAiB,GAClC,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { Device } from "react-native-ble-plx";
2
+ import { CreateDeviceParams } from "../../../types/create-device-params";
3
+ import { DependentResultHandlerParams } from "../../../types/dependent-result-handler-params";
4
+ import { MeasurementTypeForDevices } from "../../../types/device-measurement-map";
5
+ import { IntegratedDevices } from "../../../types/integrated-devices";
6
+ import { IService } from "../../../types/service.type";
7
+ import { BTManagedDevice } from "../bt-managed-device";
8
+ import { Bpw1FrameReader } from "./bpw1.frame-reader";
9
+ import { bpw1MainServices } from "./bpw1.main-services";
10
+ type Bpw1Measurement = MeasurementTypeForDevices<[IntegratedDevices.BPW1]>;
11
+ /** Viatom BPW1 watch, including stored blood-pressure history. */
12
+ declare class Bpw1Device extends BTManagedDevice<IntegratedDevices.BPW1> {
13
+ protected mainServices: IService[];
14
+ protected stuckDataTimeout: number;
15
+ protected onStreamStart: undefined;
16
+ protected frameReader: Bpw1FrameReader;
17
+ constructor(device: Device, params: CreateDeviceParams<IntegratedDevices.BPW1>);
18
+ protected handleDependentResult: (data: DependentResultHandlerParams<Bpw1Measurement>) => DependentResultHandlerParams<Bpw1Measurement>;
19
+ protected handleSuccessResult(): void | boolean;
20
+ }
21
+ export { Bpw1Device, bpw1MainServices };
22
+ //# sourceMappingURL=bpw1.device.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bpw1.device.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/bpw1/bpw1.device.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAI9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gDAAgD,CAAC;AAC9F,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAEtE,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAIvD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,KAAK,eAAe,GAAG,yBAAyB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;AAE3E,kEAAkE;AAClE,cAAM,UAAW,SAAQ,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC;IAC9D,SAAS,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAoB;IACtD,SAAS,CAAC,gBAAgB,SAAW;IACrC,SAAS,CAAC,aAAa,YAAa;IACpC,SAAS,CAAC,WAAW,kBAAyB;gBAG5C,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,IAAI,CAAC;IAOpD,SAAS,CAAC,qBAAqB,GAC7B,MAAM,4BAA4B,CAAC,eAAe,CAAC,KAClD,4BAA4B,CAAC,eAAe,CAAC,CAiB9C;IAEF,SAAS,CAAC,mBAAmB,IAAI,IAAI,GAAG,OAAO;CAGhD;AAED,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC"}
@@ -0,0 +1,9 @@
1
+ interface Bpw1BloodPressureRecord {
2
+ systolic: number;
3
+ diastolic: number;
4
+ recordedAt: Date;
5
+ }
6
+ /** Decodes BP records from ViHealth's generic LHZL health-history packet. */
7
+ export declare const parseBpw1BloodPressureRecords: (frame: readonly string[]) => Bpw1BloodPressureRecord[];
8
+ export type { Bpw1BloodPressureRecord };
9
+ //# sourceMappingURL=bpw1.frame-parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bpw1.frame-parser.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.ts"],"names":[],"mappings":"AAEA,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,IAAI,CAAC;CAClB;AA0BD,6EAA6E;AAC7E,eAAO,MAAM,6BAA6B,GACxC,OAAO,SAAS,MAAM,EAAE,KACvB,uBAAuB,EAyDzB,CAAC;AAEF,YAAY,EAAE,uBAAuB,EAAE,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { FrameReadResult } from "../../../types/frame-read-result";
2
+ import { FrameReader } from "../../../types/frame-reader";
3
+ /** Reads the length-prefixed, checksummed LHZL history frames used by BPW1. */
4
+ export declare class Bpw1FrameReader implements FrameReader {
5
+ readFrame(buffer: readonly string[]): FrameReadResult;
6
+ private hasValidChecksum;
7
+ }
8
+ //# sourceMappingURL=bpw1.frame-reader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bpw1.frame-reader.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAM1D,+EAA+E;AAC/E,qBAAa,eAAgB,YAAW,WAAW;IAC1C,SAAS,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,eAAe;IA6C5D,OAAO,CAAC,gBAAgB;CASzB"}
@@ -0,0 +1,4 @@
1
+ import { IService } from "../../../types/service.type";
2
+ /** Viatom BPW1's LHZL watch-profile GATT surface used by ViHealth. */
3
+ export declare const bpw1MainServices: IService[];
4
+ //# sourceMappingURL=bpw1.main-services.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bpw1.main-services.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/bpw1/bpw1.main-services.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAEvD,sEAAsE;AACtE,eAAO,MAAM,gBAAgB,EAAE,QAAQ,EAyBtC,CAAC"}
@@ -11,6 +11,7 @@ interface DataProcessorCallbacks<T extends Measurement> {
11
11
  validatePackage: (pkg: string[], uuid: string) => boolean;
12
12
  onStatusChanged?: (status: DeviceStatus, measurementTypeKey?: MeasurementTypeKey) => void;
13
13
  onStreamStart?: () => void;
14
+ onMeasurementEnd?: () => void;
14
15
  onResult?: (parsedData: MeasurementWithCaseType<Measurement>, collectedValues: string[]) => boolean | void;
15
16
  /**
16
17
  * Decides what to send in answer to one complete frame, if anything.
@@ -1 +1 @@
1
- {"version":3,"file":"bt-data-processor.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/bt-data-processor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bt-data-processor.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/bt-data-processor.ts"],"names":[],"mappings":"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"}
@@ -80,6 +80,8 @@ export declare abstract class BTManagedDevice<T extends DeviceKey = IntegratedDe
80
80
  protected validatePackage?: (pkg: string[], uuid: string) => boolean;
81
81
  protected abstract onStreamStart?: () => void;
82
82
  protected abstract handleSuccessResult(successResult: MeasurementWithCaseType<Measurement>, collectedValues: string[]): void | boolean;
83
+ /** Flushes protocol-level session state before a connection is torn down. */
84
+ protected handleMeasurementEnd(): void;
83
85
  onError?: (error: BleError | Error | string) => void;
84
86
  onDeviceStatusChanged?: (status: DeviceStatus, measurementTypeKey?: MeasurementTypeKey) => void;
85
87
  onResult?: (data: MeasurementWithCaseType<MeasurementTypeForDevices<[T]>>) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"bt-managed-device.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/bt-managed-device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bt-managed-device.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/bt-managed-device.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { Device } from "react-native-ble-plx";
2
+ import { CreateDeviceParams } from "../../../types/create-device-params";
3
+ import { IntegratedDevices } from "../../../types/integrated-devices";
4
+ import { IService } from "../../../types/service.type";
5
+ import { BTManagedDevice } from "../bt-managed-device";
6
+ declare const checkmeMainServices: IService[];
7
+ /** Viatom Checkme Pro history transfer, matching the CheckmeBleInterface in ViHealth. */
8
+ declare class CheckmeProDevice extends BTManagedDevice<IntegratedDevices.CHECKME> {
9
+ protected mainServices: IService[];
10
+ protected stuckDataTimeout: number;
11
+ protected preferredMtu: number;
12
+ protected onStreamStart: undefined;
13
+ protected validatePackage: () => boolean;
14
+ constructor(device: Device, params: CreateDeviceParams<IntegratedDevices.CHECKME>);
15
+ protected handleSuccessResult(): void;
16
+ }
17
+ export { CheckmeProDevice, checkmeMainServices };
18
+ //# sourceMappingURL=checkme.device.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkme.device.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/checkme/checkme.device.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAEzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAEtE,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAyBvD,QAAA,MAAM,mBAAmB,EAAE,QAAQ,EASlC,CAAC;AAEF,yFAAyF;AACzF,cAAM,gBAAiB,SAAQ,eAAe,CAAC,iBAAiB,CAAC,OAAO,CAAC;IACvE,SAAS,CAAC,YAAY,aAAuB;IAC7C,SAAS,CAAC,gBAAgB,SAAoB;IAC9C,UAAmB,YAAY,SAAiB;IAChD,SAAS,CAAC,aAAa,YAAa;IACpC,UAAmB,eAAe,QAAO,OAAO,CAAS;gBAGvD,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,OAAO,CAAC;IAmBvD,SAAS,CAAC,mBAAmB,IAAI,IAAI;CAGtC;AAED,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,CAAC"}
@@ -0,0 +1,79 @@
1
+ import { FrameReadResult } from "../../../types/frame-read-result";
2
+ import { FrameReader } from "../../../types/frame-reader";
3
+ export declare const CHECKME_SERVICE = "14839ac4-7d7e-415c-9a42-167340cf2339";
4
+ export declare const CHECKME_WRITE = "8b00ace7-eb0b-49b0-bbe9-9aee0a26e1a3";
5
+ export declare const CHECKME_NOTIFY = "0734594a-a8e7-4b1a-a6b1-cd5243059a57";
6
+ export declare const CheckmeCommand: {
7
+ readonly info: 20;
8
+ readonly ping: 21;
9
+ readonly syncParameters: 22;
10
+ readonly readStart: 3;
11
+ readonly readContent: 4;
12
+ readonly readEnd: 5;
13
+ };
14
+ export declare const CheckmeListType: {
15
+ readonly daily: 0;
16
+ readonly ecg: 1;
17
+ readonly oxygen: 2;
18
+ readonly bloodPressure: 3;
19
+ readonly temperature: 5;
20
+ readonly user: 8;
21
+ };
22
+ export declare const checkmeCommand: (command: number, payload?: readonly string[]) => string[];
23
+ export declare const checkmeReadFileStart: (name: string) => string[];
24
+ export declare const checkmeReadContent: (sequence: number) => string[];
25
+ export declare const checkmeReadEnd: () => string[];
26
+ export interface CheckmeResponse {
27
+ head: number;
28
+ state: boolean;
29
+ sequence: number;
30
+ content: string[];
31
+ }
32
+ /** Decodes the two response envelopes used by Checkme Pro's vendor library. */
33
+ export declare const decodeCheckmeResponse: (bytes: readonly string[]) => CheckmeResponse | undefined;
34
+ /** Handles split notifications, concatenated notifications, and both vendor envelopes. */
35
+ export declare class CheckmeFrameReader implements FrameReader {
36
+ readFrame(buffer: readonly string[]): FrameReadResult;
37
+ private findStart;
38
+ private hasValidChecksum;
39
+ }
40
+ export interface CheckmeTimestampedRecord {
41
+ recordedAt: Date;
42
+ recordName: string;
43
+ }
44
+ export interface CheckmeBloodPressureRecord extends CheckmeTimestampedRecord {
45
+ systolic: number;
46
+ diastolic: number;
47
+ heartRate: number;
48
+ }
49
+ export declare const parseCheckmeBloodPressureRecords: (bytes: readonly string[]) => CheckmeBloodPressureRecord[];
50
+ export interface CheckmeDailyRecord extends CheckmeTimestampedRecord {
51
+ heartRate: number;
52
+ bloodOxygen: number;
53
+ systolic?: number;
54
+ diastolic?: number;
55
+ }
56
+ export declare const parseCheckmeDailyRecords: (bytes: readonly string[]) => CheckmeDailyRecord[];
57
+ export interface CheckmeOxygenRecord extends CheckmeTimestampedRecord {
58
+ bloodOxygen: number;
59
+ heartRate: number;
60
+ perfusionIndex: number;
61
+ }
62
+ export declare const parseCheckmeOxygenRecords: (bytes: readonly string[]) => CheckmeOxygenRecord[];
63
+ export interface CheckmeTemperatureRecord extends CheckmeTimestampedRecord {
64
+ temperature: number;
65
+ }
66
+ export declare const parseCheckmeTemperatureRecords: (bytes: readonly string[]) => CheckmeTemperatureRecord[];
67
+ export interface CheckmeEcgRecord extends CheckmeTimestampedRecord {
68
+ result: number;
69
+ }
70
+ export declare const parseCheckmeEcgRecords: (bytes: readonly string[]) => CheckmeEcgRecord[];
71
+ export interface CheckmeEcgFile {
72
+ heartRate: number;
73
+ duration: number;
74
+ diagnosticResult: number;
75
+ diagramPoints: number[];
76
+ }
77
+ /** Decodes Checkme's 21-byte ECG header and little-endian signed waveform. */
78
+ export declare const decodeCheckmeEcgFile: (bytes: readonly string[]) => CheckmeEcgFile | undefined;
79
+ //# sourceMappingURL=checkme.protocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkme.protocol.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/checkme/checkme.protocol.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ import { BloodPressureMeasurement, EcgMeasurement, MeasurementTypeKey, PulseOximeterMeasurement, BodyTemperatureMeasurement } from "@ovok/core";
2
+ import { CaseType } from "../../../types/case-type";
3
+ import { CommandSequencer, CommandTimeoutResult } from "../../../types/command-sequencer";
4
+ import { DeviceCommand } from "../../../types/device-command";
5
+ import { CheckmeListType } from "./checkme.protocol";
6
+ type CheckmeMeasurement = BloodPressureMeasurement | EcgMeasurement | PulseOximeterMeasurement | BodyTemperatureMeasurement | {
7
+ measurementTypeKey: MeasurementTypeKey.heartRate;
8
+ heartRate?: number;
9
+ recordedAt?: Date;
10
+ };
11
+ interface CheckmeTransferParams {
12
+ write: Omit<DeviceCommand, "frame">;
13
+ onResult: (result: CheckmeMeasurement & {
14
+ caseType: CaseType;
15
+ }) => void;
16
+ }
17
+ /**
18
+ * Downloads Checkme Pro history using the command exchange in ViHealth's CheckmeBleInterface.
19
+ * The device returns list records first; the daily list and ECG list then point to waveform
20
+ * files, which are read with the same offset-based transfer.
21
+ */
22
+ export declare class CheckmeProSequencer implements CommandSequencer {
23
+ private readonly params;
24
+ private phase;
25
+ private current;
26
+ private queue;
27
+ private content;
28
+ private expectedBytes;
29
+ private sequence;
30
+ private retries;
31
+ private lastCommand;
32
+ private reported;
33
+ constructor(params: CheckmeTransferParams);
34
+ initialCommands: () => readonly DeviceCommand[];
35
+ isHistoryTransfer: () => boolean;
36
+ commandTimeoutMs: () => number | undefined;
37
+ onCommandTimeout: () => CommandTimeoutResult;
38
+ isNormalDisconnect: () => boolean;
39
+ nextCommand: (frame: readonly string[]) => readonly DeviceCommand[] | undefined;
40
+ private write;
41
+ private remember;
42
+ private startNextFile;
43
+ private finishFile;
44
+ private finishCurrentFile;
45
+ private processFile;
46
+ private processDaily;
47
+ private filePlan;
48
+ private reportOnce;
49
+ }
50
+ export type { CheckmeMeasurement, CheckmeTransferParams };
51
+ export { CheckmeListType };
52
+ //# sourceMappingURL=checkme.sequencer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkme.sequencer.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/checkme/checkme.sequencer.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,wBAAwB,EACxB,cAAc,EACd,kBAAkB,EAClB,wBAAwB,EACxB,0BAA0B,EAC3B,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE9D,OAAO,EAEL,eAAe,EAYhB,MAAM,oBAAoB,CAAC;AAE5B,KAAK,kBAAkB,GACnB,wBAAwB,GACxB,cAAc,GACd,wBAAwB,GACxB,0BAA0B,GAC1B;IACE,kBAAkB,EAAE,kBAAkB,CAAC,SAAS,CAAC;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,IAAI,CAAC;CACnB,CAAC;AAgBN,UAAU,qBAAqB;IAC7B,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IACpC,QAAQ,EAAE,CAAC,MAAM,EAAE,kBAAkB,GAAG;QAAE,QAAQ,EAAE,QAAQ,CAAA;KAAE,KAAK,IAAI,CAAC;CACzE;AAqCD;;;;GAIG;AACH,qBAAa,mBAAoB,YAAW,gBAAgB;IAWvC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAV1C,OAAO,CAAC,KAAK,CAAyD;IACtE,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,QAAQ,CAAqB;gBAED,MAAM,EAAE,qBAAqB;IAE1D,eAAe,QAAO,SAAS,aAAa,EAAE,CACsB;IAEpE,iBAAiB,QAAO,OAAO,CAAS;IAExC,gBAAgB,QAAO,MAAM,GAAG,SAAS,CACM;IAE/C,gBAAgB,QAAO,oBAAoB,CAUhD;IAEK,kBAAkB,QAAO,OAAO,CAA0B;IAE1D,WAAW,GAChB,OAAO,SAAS,MAAM,EAAE,KACvB,SAAS,aAAa,EAAE,GAAG,SAAS,CAuCrC;IAEF,OAAO,CAAC,KAAK,CACuB;IAEpC,OAAO,CAAC,QAAQ,CAId;IAEF,OAAO,CAAC,aAAa,CAanB;IAEF,OAAO,CAAC,UAAU,CAIhB;IAEF,OAAO,CAAC,iBAAiB,CAMvB;IAEF,OAAO,CAAC,WAAW,CAmEjB;IAEF,OAAO,CAAC,YAAY,CA6BlB;IAEF,OAAO,CAAC,QAAQ,CA0Bd;IAEF,OAAO,CAAC,UAAU,CAUhB;CACH;AAOD,YAAY,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -25,6 +25,9 @@ export declare class CustomDevice extends BTManagedDevice<CustomDeviceId> {
25
25
  private readonly definition;
26
26
  private readonly deliveredEcgFileNames;
27
27
  private readonly validators;
28
+ private readonly sessionPolicy;
29
+ private readonly sessionAggregates;
30
+ private sessionStartedAt;
28
31
  constructor(device: Device, params: CreateDeviceParams<CustomDeviceId>, definition: CustomDeviceDefinition);
29
32
  /**
30
33
  * Gives a Lepu declaration its frame reader and its command sequence.
@@ -51,6 +54,11 @@ export declare class CustomDevice extends BTManagedDevice<CustomDeviceId> {
51
54
  * readings themselves are reported from handleDependentResult, so there is nothing to do.
52
55
  */
53
56
  protected handleSuccessResult(): void | boolean;
57
+ /** Emits a completed session before the state machine returns to CONNECTED. */
58
+ protected handleMeasurementEnd(): void;
59
+ private sessionAverage;
60
+ /** Collects only complete, physiologically valid readings from one live frame. */
61
+ private captureSessionSample;
54
62
  /** Adds protocol-specific metadata to a validated reading before it is emitted. */
55
63
  protected decorateReading: (reading: CustomResult, frame?: readonly string[], recordOffset?: number) => CustomResult;
56
64
  /**
@@ -76,6 +84,8 @@ export declare class CustomDevice extends BTManagedDevice<CustomDeviceId> {
76
84
  private report;
77
85
  private discard;
78
86
  private reportMeasurement;
87
+ private createMeasurement;
88
+ private measurementRejection;
79
89
  }
80
90
  export {};
81
91
  //# sourceMappingURL=custom.device.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"custom.device.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/custom/custom.device.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gDAAgD,CAAC;AAC9F,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAElF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AAEpF,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAOvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAiBvD,KAAK,mBAAmB,GAAG,yBAAyB,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;AACvE,KAAK,YAAY,GAAG,uBAAuB,CAAC,mBAAmB,CAAC,CAAC;AAEjE;;;;;;;;GAQG;AACH,qBAAa,YAAa,SAAQ,eAAe,CAAC,cAAc,CAAC;IAC/D,SAAS,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAC;IACnC,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC;IACnC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IAEnD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAyB;IACpD,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAsB;IAC5D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkD;gBAG3E,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,kBAAkB,CAAC,cAAc,CAAC,EAC1C,UAAU,EAAE,sBAAsB;IAmCpC;;;;;;OAMG;IACH,OAAO,CAAC,mBAAmB;IAiE3B,OAAO,CAAC,mBAAmB,CAmBzB;IAEF,OAAO,CAAC,YAAY,CACwB;IAE5C,OAAO,CAAC,iBAAiB,CAMvB;IAEF,SAAS,CAAC,eAAe,GAAI,KAAK,MAAM,EAAE,EAAE,MAAM,MAAM,KAAG,OAAO,CAQhE;IAEF;;;;OAIG;IACH,SAAS,CAAC,qBAAqB,GAC7B,MAAM,4BAA4B,CAAC,mBAAmB,CAAC,KACtD,4BAA4B,CAAC,mBAAmB,CAAC,CAalD;IAEF,4FAA4F;IAC5F,SAAS,CAAC,2BAA2B,GACnC,OAAO,4BAA4B,CAAC,mBAAmB,CAAC,KACvD,OAAO,CAAS;IAEnB;;;OAGG;IACH,SAAS,CAAC,mBAAmB,IAAI,IAAI,GAAG,OAAO;IAI/C,mFAAmF;IACnF,SAAS,CAAC,eAAe,GACvB,SAAS,YAAY,EACrB,QAAQ,SAAS,MAAM,EAAE,EACzB,eAAe,MAAM,KACpB,YAAY,CAGa;IAE5B;;;;;;;OAOG;IACH,OAAO,CAAC,WAAW;IA2BnB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,MAAM;IAmBd,OAAO,CAAC,OAAO;IAMf,OAAO,CAAC,iBAAiB;CAkC1B"}
1
+ {"version":3,"file":"custom.device.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/custom/custom.device.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gDAAgD,CAAC;AAC9F,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAElF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AAEpF,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAOvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAiBvD,KAAK,mBAAmB,GAAG,yBAAyB,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;AACvE,KAAK,YAAY,GAAG,uBAAuB,CAAC,mBAAmB,CAAC,CAAC;AAQjE;;;;;;;;GAQG;AACH,qBAAa,YAAa,SAAQ,eAAe,CAAC,cAAc,CAAC;IAC/D,SAAS,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAC;IACnC,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC;IACnC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IAEnD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAyB;IACpD,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAsB;IAC5D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkD;IAC7E,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkC;IAChE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAG9B;IACJ,OAAO,CAAC,gBAAgB,CAAmB;gBAGzC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,kBAAkB,CAAC,cAAc,CAAC,EAC1C,UAAU,EAAE,sBAAsB;IAoCpC;;;;;;OAMG;IACH,OAAO,CAAC,mBAAmB;IAiE3B,OAAO,CAAC,mBAAmB,CAmBzB;IAEF,OAAO,CAAC,YAAY,CACwB;IAE5C,OAAO,CAAC,iBAAiB,CAMvB;IAEF,SAAS,CAAC,eAAe,GAAI,KAAK,MAAM,EAAE,EAAE,MAAM,MAAM,KAAG,OAAO,CAQhE;IAEF;;;;OAIG;IACH,SAAS,CAAC,qBAAqB,GAC7B,MAAM,4BAA4B,CAAC,mBAAmB,CAAC,KACtD,4BAA4B,CAAC,mBAAmB,CAAC,CAsBlD;IAEF,4FAA4F;IAC5F,SAAS,CAAC,2BAA2B,GACnC,OAAO,4BAA4B,CAAC,mBAAmB,CAAC,KACvD,OAAO,CAAS;IAEnB;;;OAGG;IACH,SAAS,CAAC,mBAAmB,IAAI,IAAI,GAAG,OAAO;IAI/C,+EAA+E;IAC/E,SAAS,CAAC,oBAAoB,IAAI,IAAI;IA2CtC,OAAO,CAAC,cAAc;IActB,kFAAkF;IAClF,OAAO,CAAC,oBAAoB;IAqC5B,mFAAmF;IACnF,SAAS,CAAC,eAAe,GACvB,SAAS,YAAY,EACrB,QAAQ,SAAS,MAAM,EAAE,EACzB,eAAe,MAAM,KACpB,YAAY,CAGa;IAE5B;;;;;;;OAOG;IACH,OAAO,CAAC,WAAW;IA2BnB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,MAAM;IAmBd,OAAO,CAAC,OAAO;IAMf,OAAO,CAAC,iBAAiB;IAkBzB,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,oBAAoB;CAe7B"}
@@ -1,6 +1,7 @@
1
1
  import { ClockSyncCapability } from "../../../types/clock-sync";
2
2
  import { CustomCaseSpec } from "../../../types/custom-case-spec";
3
3
  import { CustomDeviceDefinition, CustomReadingDecorator } from "../../../types/custom-device-definition";
4
+ import { CustomSessionPolicy } from "../../../types/custom-session-policy";
4
5
  /**
5
6
  * The characteristics each group of products exposes, read from the vendor's own managers.
6
7
  *
@@ -45,6 +46,8 @@ declare const lepuTransports: {
45
46
  type LepuTransportName = keyof typeof lepuTransports;
46
47
  interface LepuDeviceParams {
47
48
  decorateReading?: CustomReadingDecorator;
49
+ /** Aggregate valid live samples when the protocol describes a session. */
50
+ sessionPolicy?: CustomSessionPolicy;
48
51
  /** Reported back as deviceData.name, and must not collide with a built-in device. */
49
52
  id?: string;
50
53
  /** The name the hardware advertises. */
@@ -1 +1 @@
1
- {"version":3,"file":"lepu.transports.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/lepu/lepu.transports.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,yCAAyC,CAAC;AAyEjD;;;;;;;GAOG;AACH,QAAA,MAAM,cAAc;;;;;;;IAQlB,8EAA8E;;;;;;;;;;;;;;;;;;;;;;;;;CA4B9B,CAAC;AAEnD,KAAK,iBAAiB,GAAG,MAAM,OAAO,cAAc,CAAC;AACrD,UAAU,gBAAgB;IACxB,eAAe,CAAC,EAAE,sBAAsB,CAAC;IAEzC,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B,oFAAoF;IACpF,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAE9B,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,IAAI,GAAG,eAAe,CAAC;IAElC,mFAAmF;IACnF,wBAAwB,CAAC,EAAE,eAAe,CAAC;IAE3C,iFAAiF;IACjF,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnC,iFAAiF;IACjF,EAAE,CAAC,EAAE;QACH,cAAc,EAAE,MAAM,CAAC;QACvB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;QAC7B,KAAK,EAAE,cAAc,EAAE,CAAC;KACzB,CAAC;IAEF,2DAA2D;IAC3D,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B,mFAAmF;IACnF,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,YAAY,CAAC,EAAE,KAAK,CAAC;IAErB,oFAAoF;IACpF,cAAc,CAAC,EAAE,WAAW,CAAC;IAE7B,gFAAgF;IAChF,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAEhC;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE/B;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE7B,KAAK,EAAE,cAAc,EAAE,CAAC;IAExB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAID,QAAA,MAAM,UAAU,GAAI,QAAQ,gBAAgB,KAAG,sBAyG9C,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC;AACtC,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"lepu.transports.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/lepu/lepu.transports.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAyE3E;;;;;;;GAOG;AACH,QAAA,MAAM,cAAc;;;;;;;IAQlB,8EAA8E;;;;;;;;;;;;;;;;;;;;;;;;;CA4B9B,CAAC;AAEnD,KAAK,iBAAiB,GAAG,MAAM,OAAO,cAAc,CAAC;AACrD,UAAU,gBAAgB;IACxB,eAAe,CAAC,EAAE,sBAAsB,CAAC;IAEzC,0EAA0E;IAC1E,aAAa,CAAC,EAAE,mBAAmB,CAAC;IAEpC,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B,oFAAoF;IACpF,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAE9B,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,IAAI,GAAG,eAAe,CAAC;IAElC,mFAAmF;IACnF,wBAAwB,CAAC,EAAE,eAAe,CAAC;IAE3C,iFAAiF;IACjF,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnC,iFAAiF;IACjF,EAAE,CAAC,EAAE;QACH,cAAc,EAAE,MAAM,CAAC;QACvB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;QAC7B,KAAK,EAAE,cAAc,EAAE,CAAC;KACzB,CAAC;IAEF,2DAA2D;IAC3D,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B,mFAAmF;IACnF,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,YAAY,CAAC,EAAE,KAAK,CAAC;IAErB,oFAAoF;IACpF,cAAc,CAAC,EAAE,WAAW,CAAC;IAE7B,gFAAgF;IAChF,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAEhC;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE/B;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE7B,KAAK,EAAE,cAAc,EAAE,CAAC;IAExB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAID,QAAA,MAAM,UAAU,GAAI,QAAQ,gBAAgB,KAAG,sBA4G9C,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC;AACtC,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,CAAC"}
@@ -5,6 +5,7 @@ import { MeasurementWithCaseType } from "../../types/measurement-with-case-type"
5
5
  interface MeasurementStateCallbacks {
6
6
  onStatusChanged?: (status: DeviceStatus, measurementTypeKey?: MeasurementTypeKey) => void;
7
7
  onStreamStart?: () => void;
8
+ onMeasurementEnd?: () => void;
8
9
  onResult?: (parsedData: MeasurementWithCaseType<Measurement>, frame: string[]) => boolean | void;
9
10
  }
10
11
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"measurement-state-machine.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/measurement-state-machine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAG7D,OAAO,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAEjF,UAAU,yBAAyB;IACjC,eAAe,CAAC,EAAE,CAChB,MAAM,EAAE,YAAY,EACpB,kBAAkB,CAAC,EAAE,kBAAkB,KACpC,IAAI,CAAC;IACV,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,QAAQ,CAAC,EAAE,CACT,UAAU,EAAE,uBAAuB,CAAC,WAAW,CAAC,EAChD,KAAK,EAAE,MAAM,EAAE,KACZ,OAAO,GAAG,IAAI,CAAC;CACrB;AAED;;;;;;;;GAQG;AACH,qBAAa,uBAAuB,CAAC,CAAC,SAAS,WAAW;IAK5C,OAAO,CAAC,QAAQ,CAAC,SAAS;IAJtC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,SAAS,CAAuB;gBAEX,SAAS,EAAE,yBAAyB;IAE1D,KAAK,QAAO,IAAI,CAIrB;IAEK,OAAO,GACZ,kDAIG,4BAA4B,CAAC,CAAC,CAAC,EAClC,OAAO,MAAM,EAAE,KACd,IAAI,CAgCL;IAEF,OAAO,CAAC,cAAc,CAIpB;IAEF,OAAO,CAAC,aAAa,CAMnB;CACH"}
1
+ {"version":3,"file":"measurement-state-machine.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/measurement-state-machine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAG7D,OAAO,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAEjF,UAAU,yBAAyB;IACjC,eAAe,CAAC,EAAE,CAChB,MAAM,EAAE,YAAY,EACpB,kBAAkB,CAAC,EAAE,kBAAkB,KACpC,IAAI,CAAC;IACV,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,QAAQ,CAAC,EAAE,CACT,UAAU,EAAE,uBAAuB,CAAC,WAAW,CAAC,EAChD,KAAK,EAAE,MAAM,EAAE,KACZ,OAAO,GAAG,IAAI,CAAC;CACrB;AAED;;;;;;;;GAQG;AACH,qBAAa,uBAAuB,CAAC,CAAC,SAAS,WAAW;IAK5C,OAAO,CAAC,QAAQ,CAAC,SAAS;IAJtC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,SAAS,CAAuB;gBAEX,SAAS,EAAE,yBAAyB;IAE1D,KAAK,QAAO,IAAI,CAIrB;IAEK,OAAO,GACZ,kDAIG,4BAA4B,CAAC,CAAC,CAAC,EAClC,OAAO,MAAM,EAAE,KACd,IAAI,CAgCL;IAEF,OAAO,CAAC,cAAc,CAIpB;IAEF,OAAO,CAAC,aAAa,CAOnB;CACH"}
@@ -1 +1 @@
1
- {"version":3,"file":"viatom.ecg-recorders.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAqDjF,UAAU,eAAe;IAEvB,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;CAChC;AAiDD,uFAAuF;AACvF,QAAA,MAAM,WAAW,GACf,gBAAgB,MAAM,EACtB,QAAQ,eAAe,KACtB,sBASA,CAAC;AAEJ;;;;;GAKG;AACH,QAAA,MAAM,WAAW,GACf,gBAAgB,MAAM,EACtB,QAAQ,eAAe,KACtB,sBASA,CAAC;AAEJ,6EAA6E;AAC7E,QAAA,MAAM,WAAW,GACf,gBAAgB,MAAM,EACtB,QAAQ,eAAe,KACtB,sBASA,CAAC;AAEJ,6CAA6C;AAC7C,QAAA,MAAM,eAAe,EAAE,SAAS,MAAM,EASrC,CAAC;AAEF,gFAAgF;AAChF,QAAA,MAAM,eAAe,EAAE,SAAS,MAAM,EAA+C,CAAC;AAKtF,8EAA8E;AAC9E,QAAA,MAAM,eAAe,EAAE,SAAS,MAAM,EAAyB,CAAC;AAEhE,OAAO,EACL,WAAW,EACX,eAAe,EACf,WAAW,EACX,eAAe,EACf,eAAe,EACf,WAAW,GACZ,CAAC"}
1
+ {"version":3,"file":"viatom.ecg-recorders.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAqDjF,UAAU,eAAe;IAEvB,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;CAChC;AAkDD,uFAAuF;AACvF,QAAA,MAAM,WAAW,GACf,gBAAgB,MAAM,EACtB,QAAQ,eAAe,KACtB,sBASA,CAAC;AAEJ;;;;;GAKG;AACH,QAAA,MAAM,WAAW,GACf,gBAAgB,MAAM,EACtB,QAAQ,eAAe,KACtB,sBASA,CAAC;AAEJ,6EAA6E;AAC7E,QAAA,MAAM,WAAW,GACf,gBAAgB,MAAM,EACtB,QAAQ,eAAe,KACtB,sBASA,CAAC;AAEJ,6CAA6C;AAC7C,QAAA,MAAM,eAAe,EAAE,SAAS,MAAM,EASrC,CAAC;AAEF,gFAAgF;AAChF,QAAA,MAAM,eAAe,EAAE,SAAS,MAAM,EAA+C,CAAC;AAKtF,8EAA8E;AAC9E,QAAA,MAAM,eAAe,EAAE,SAAS,MAAM,EAAyB,CAAC;AAEhE,OAAO,EACL,WAAW,EACX,eAAe,EACf,WAAW,EACX,eAAe,EACf,eAAe,EACf,WAAW,GACZ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"viatom.lepod.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/viatom/viatom.lepod.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAoGjF,UAAU,WAAW;IAEnB,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B,iEAAiE;IACjE,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;CAChC;AAED;;;;;;;GAOG;AACH,QAAA,MAAM,YAAY,GAChB,gBAAgB,MAAM,EACtB,QAAQ,WAAW,KAClB,sBAwBC,CAAC;AAEL,4CAA4C;AAC5C,QAAA,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAA0B,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"viatom.lepod.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/viatom/viatom.lepod.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAoGjF,UAAU,WAAW;IAEnB,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B,iEAAiE;IACjE,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;CAChC;AAED;;;;;;;GAOG;AACH,QAAA,MAAM,YAAY,GAChB,gBAAgB,MAAM,EACtB,QAAQ,WAAW,KAClB,sBAyBC,CAAC;AAEL,4CAA4C;AAC5C,QAAA,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAA0B,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"viatom.oximeters.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/viatom/viatom.oximeters.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AA+DjF;;;;;GAKG;AACH,QAAA,MAAM,kBAAkB,EAAE,SAAS,MAAM,EAMxC,CAAC;AAEF,UAAU,oBAAoB;IAC5B,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;CAChC;AAED;;;;;;;GAOG;AACH,QAAA,MAAM,cAAc,GAClB,gBAAgB,MAAM,EACtB,QAAQ,oBAAoB,KAC3B,sBAoEF,CAAC;AAEF,UAAU,iBAAiB;IACzB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC7B;AAED,sEAAsE;AACtE,QAAA,MAAM,kBAAkB,GACtB,gBAAgB,MAAM,EACtB,SAAQ,iBAAsB,KAC7B,sBAaC,CAAC;AAEL;;;;;;;;GAQG;AACH,QAAA,MAAM,qBAAqB,EAAE,SAAS,MAAM,EAgC3C,CAAC;AAEF,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,kBAAkB,GACnB,CAAC"}
1
+ {"version":3,"file":"viatom.oximeters.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/viatom/viatom.oximeters.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AA+DjF;;;;;GAKG;AACH,QAAA,MAAM,kBAAkB,EAAE,SAAS,MAAM,EAMxC,CAAC;AAEF,UAAU,oBAAoB;IAC5B,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;CAChC;AAED;;;;;;;GAOG;AACH,QAAA,MAAM,cAAc,GAClB,gBAAgB,MAAM,EACtB,QAAQ,oBAAoB,KAC3B,sBAqEF,CAAC;AAEF,UAAU,iBAAiB;IACzB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC7B;AAED,sEAAsE;AACtE,QAAA,MAAM,kBAAkB,GACtB,gBAAgB,MAAM,EACtB,SAAQ,iBAAsB,KAC7B,sBAcC,CAAC;AAEL;;;;;;;;GAQG;AACH,QAAA,MAAM,qBAAqB,EAAE,SAAS,MAAM,EAgC3C,CAAC;AAEF,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,kBAAkB,GACnB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"clock-sync.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/clock-sync.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,aAAa,GAAG,SAAS,CAAC;AAE1E,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,KAAK,CAAC;AAEhD,MAAM,WAAW,gBAAgB;IAE/B,2EAA2E;IAC3E,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,wEAAwE;IACxE,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;IAEjB,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED,eAAO,MAAM,kBAAkB,GAAI,UAAU,gBAAgB,KAAG,OACpC,CAAC;AAE7B,eAAO,MAAM,aAAa,GACxB,MAAM,IAAI,EACV,WAAU,iBAA2B;;;;;;;;CAoBhC,CAAC;AAER,qFAAqF;AACrF,eAAO,MAAM,4BAA4B,GACvC,YAAY,MAAM,KACjB,mBAcF,CAAC"}
1
+ {"version":3,"file":"clock-sync.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/clock-sync.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,aAAa,GAAG,SAAS,CAAC;AAE1E,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,KAAK,CAAC;AAEhD,MAAM,WAAW,gBAAgB;IAE/B,2EAA2E;IAC3E,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,wEAAwE;IACxE,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;IAEjB,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED,eAAO,MAAM,kBAAkB,GAAI,UAAU,gBAAgB,KAAG,OACpC,CAAC;AAE7B,eAAO,MAAM,aAAa,GACxB,MAAM,IAAI,EACV,WAAU,iBAA2B;;;;;;;;CAoBhC,CAAC;AAER,qFAAqF;AACrF,eAAO,MAAM,4BAA4B,GACvC,YAAY,MAAM,KACjB,mBAeF,CAAC"}
@@ -6,6 +6,7 @@ import { CustomDeviceId } from "./custom-device-id";
6
6
  import { CustomDeviceSpec } from "./custom-device-spec";
7
7
  import { CustomFrameSpec } from "./custom-frame-spec";
8
8
  import { CustomLepuSpec } from "./custom-lepu-spec";
9
+ import { CustomSessionPolicy } from "./custom-session-policy";
9
10
  import { MeasurementWithCaseType } from "./measurement-with-case-type";
10
11
  import { IService } from "./service.type";
11
12
  type CustomReadingDecorator = (reading: MeasurementWithCaseType<Measurement>, frame?: readonly string[], recordOffset?: number) => MeasurementWithCaseType<Measurement>;
@@ -19,6 +20,7 @@ interface CustomDeviceDefinition {
19
20
  readonly nameMatch: RegExp;
20
21
  readonly matchByService: boolean;
21
22
  readonly oneReadingPerConnection: boolean;
23
+ readonly sessionPolicy?: CustomSessionPolicy;
22
24
  readonly clockSync: ClockSyncCapability;
23
25
  /** Emit the bonded connection event after a successful connection. */
24
26
  readonly reportsBondedEvent?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"custom-device-definition.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/custom-device-definition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,KAAK,sBAAsB,GAAG,CAC5B,OAAO,EAAE,uBAAuB,CAAC,WAAW,CAAC,EAC7C,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,EACzB,YAAY,CAAC,EAAE,MAAM,KAClB,uBAAuB,CAAC,WAAW,CAAC,CAAC;AAE1C;;GAEG;AACH,UAAU,sBAAsB;IAC9B,QAAQ,CAAC,CAAC,mBAAmB,CAAC,EAAE,IAAI,CAAC;IAErC,QAAQ,CAAC,EAAE,EAAE,cAAc,CAAC;IAE5B,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAEhC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IAEjC,QAAQ,CAAC,uBAAuB,EAAE,OAAO,CAAC;IAE1C,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;IAExC,sEAAsE;IACtE,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAEtC,QAAQ,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAC;IAElC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAElC,yFAAyF;IACzF,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAE1D,oFAAoF;IACpF,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAEtD,yEAAyE;IACzE,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAE/B,sEAAsE;IACtE,QAAQ,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC;IAE/B,sEAAsE;IACtE,QAAQ,CAAC,eAAe,CAAC,EAAE,sBAAsB,CAAC;CACnD;AAED,YAAY,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,CAAC"}
1
+ {"version":3,"file":"custom-device-definition.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/custom-device-definition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,KAAK,sBAAsB,GAAG,CAC5B,OAAO,EAAE,uBAAuB,CAAC,WAAW,CAAC,EAC7C,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,EACzB,YAAY,CAAC,EAAE,MAAM,KAClB,uBAAuB,CAAC,WAAW,CAAC,CAAC;AAE1C;;GAEG;AACH,UAAU,sBAAsB;IAC9B,QAAQ,CAAC,CAAC,mBAAmB,CAAC,EAAE,IAAI,CAAC;IAErC,QAAQ,CAAC,EAAE,EAAE,cAAc,CAAC;IAE5B,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAEhC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IAEjC,QAAQ,CAAC,uBAAuB,EAAE,OAAO,CAAC;IAE1C,QAAQ,CAAC,aAAa,CAAC,EAAE,mBAAmB,CAAC;IAE7C,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;IAExC,sEAAsE;IACtE,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAEtC,QAAQ,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAC;IAElC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAElC,yFAAyF;IACzF,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAE1D,oFAAoF;IACpF,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAEtD,yEAAyE;IACzE,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAE/B,sEAAsE;IACtE,QAAQ,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC;IAE/B,sEAAsE;IACtE,QAAQ,CAAC,eAAe,CAAC,EAAE,sBAAsB,CAAC;CACnD;AAED,YAAY,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,CAAC"}