brilliantsole 0.0.27 → 0.0.29

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 (202) hide show
  1. package/assets/3d/anchor.glb +0 -0
  2. package/assets/3d/coin.glb +0 -0
  3. package/assets/3d/glasses.glb +0 -0
  4. package/assets/audio/bounceMedium.wav +0 -0
  5. package/assets/audio/bounceStrong.wav +0 -0
  6. package/assets/audio/bounceWeak.wav +0 -0
  7. package/assets/audio/coin.wav +0 -0
  8. package/assets/audio/getUp.wav +0 -0
  9. package/assets/audio/grab.wav +0 -0
  10. package/assets/audio/kick.wav +0 -0
  11. package/assets/audio/platterFadeIn old.wav +0 -0
  12. package/assets/audio/platterFadeIn.wav +0 -0
  13. package/assets/audio/platterFadeOut.wav +0 -0
  14. package/assets/audio/punch.wav +0 -0
  15. package/assets/audio/punchSqueak.wav +0 -0
  16. package/assets/audio/purr.wav +0 -0
  17. package/assets/audio/purrFadeOut.wav +0 -0
  18. package/assets/audio/release.wav +0 -0
  19. package/assets/audio/splat.wav +0 -0
  20. package/assets/audio/stomp.wav +0 -0
  21. package/build/brilliantsole.cjs +3091 -741
  22. package/build/brilliantsole.cjs.map +1 -1
  23. package/build/brilliantsole.js +2759 -709
  24. package/build/brilliantsole.js.map +1 -1
  25. package/build/brilliantsole.ls.js +2602 -543
  26. package/build/brilliantsole.ls.js.map +1 -1
  27. package/build/brilliantsole.min.js +1 -1
  28. package/build/brilliantsole.min.js.map +1 -1
  29. package/build/brilliantsole.module.d.ts +295 -65
  30. package/build/brilliantsole.module.js +2749 -710
  31. package/build/brilliantsole.module.js.map +1 -1
  32. package/build/brilliantsole.module.min.d.ts +295 -65
  33. package/build/brilliantsole.module.min.js +1 -1
  34. package/build/brilliantsole.module.min.js.map +1 -1
  35. package/build/brilliantsole.node.module.d.ts +289 -62
  36. package/build/brilliantsole.node.module.js +3080 -742
  37. package/build/brilliantsole.node.module.js.map +1 -1
  38. package/build/dts/BS-output.d.ts +10 -0
  39. package/build/dts/BS.d.ts +21 -8
  40. package/build/dts/CameraManager.d.ts +72 -0
  41. package/build/dts/Device.d.ts +64 -13
  42. package/build/dts/DeviceInformationManager.d.ts +4 -4
  43. package/build/dts/DeviceManager.d.ts +2 -0
  44. package/build/dts/FileTransferManager.d.ts +18 -8
  45. package/build/dts/InformationManager.d.ts +2 -0
  46. package/build/dts/MicrophoneManager.d.ts +88 -0
  47. package/build/dts/TfliteManager.d.ts +22 -2
  48. package/build/dts/WifiManager.d.ts +61 -0
  49. package/build/dts/connection/BaseConnectionManager.d.ts +35 -3
  50. package/build/dts/connection/ClientConnectionManager.d.ts +7 -2
  51. package/build/dts/connection/bluetooth/NobleConnectionManager.d.ts +2 -1
  52. package/build/dts/connection/bluetooth/WebBluetoothConnectionManager.d.ts +1 -0
  53. package/build/dts/connection/bluetooth/bluetoothUUIDs.d.ts +2 -2
  54. package/build/dts/connection/udp/UDPConnectionManager.d.ts +28 -0
  55. package/build/dts/connection/webSocket/WebSocketConnectionManager.d.ts +25 -0
  56. package/build/dts/devicePair/DevicePair.d.ts +5 -5
  57. package/build/dts/scanner/BaseScanner.d.ts +4 -1
  58. package/build/dts/scanner/NobleScanner.d.ts +2 -1
  59. package/build/dts/sensor/MotionSensorDataManager.d.ts +5 -2
  60. package/build/dts/sensor/SensorDataManager.d.ts +5 -4
  61. package/build/dts/server/BaseClient.d.ts +5 -3
  62. package/build/dts/server/ServerUtils.d.ts +1 -1
  63. package/build/dts/server/websocket/WebSocketUtils.d.ts +1 -1
  64. package/build/dts/utils/AudioUtils.d.ts +2 -0
  65. package/build/dts/utils/Console.d.ts +2 -0
  66. package/build/dts/utils/ThrottleUtils.d.ts +2 -0
  67. package/build/dts/vibration/VibrationManager.d.ts +19 -2
  68. package/build/index.d.ts +292 -62
  69. package/build/index.node.d.ts +286 -59
  70. package/examples/3d/scene.html +19 -5
  71. package/examples/3d-generic/index.html +144 -0
  72. package/examples/3d-generic/script.js +266 -0
  73. package/examples/basic/index.html +267 -17
  74. package/examples/basic/script.js +958 -105
  75. package/examples/camera/barcode-detector.js +109 -0
  76. package/examples/camera/depth-estimation.js +71 -0
  77. package/examples/camera/face-detector.js +119 -0
  78. package/examples/camera/face-landmark.js +111 -0
  79. package/examples/camera/gesture-recognition.js +97 -0
  80. package/examples/camera/hand-landmark.js +74 -0
  81. package/examples/camera/image-segmentation.js +98 -0
  82. package/examples/camera/image-to-text.js +43 -0
  83. package/examples/camera/image-upscale.js +75 -0
  84. package/examples/camera/index.html +129 -0
  85. package/examples/camera/object-detection.js +98 -0
  86. package/examples/camera/pose-landmark.js +60 -0
  87. package/examples/camera/script.js +316 -0
  88. package/examples/camera/utils.js +165 -0
  89. package/examples/camera/yolo-tiny.js +54 -0
  90. package/examples/camera/yolo.js +119 -0
  91. package/examples/edge-impulse/script.js +157 -48
  92. package/examples/edge-impulse-test/README.md +11 -0
  93. package/examples/edge-impulse-test/edge-impulse-standalone.js +7228 -0
  94. package/examples/edge-impulse-test/edge-impulse-standalone.wasm +0 -0
  95. package/examples/edge-impulse-test/index.html +75 -0
  96. package/examples/edge-impulse-test/run-impulse.js +135 -0
  97. package/examples/edge-impulse-test/script.js +200 -0
  98. package/examples/glasses-gestures/README.md +11 -0
  99. package/examples/glasses-gestures/edge-impulse-standalone.js +7228 -0
  100. package/examples/glasses-gestures/edge-impulse-standalone.wasm +0 -0
  101. package/examples/glasses-gestures/index.html +69 -0
  102. package/examples/glasses-gestures/run-impulse.js +135 -0
  103. package/examples/glasses-gestures/script.js +226 -0
  104. package/examples/gloves/edge-impulse-standalone.js +7228 -0
  105. package/examples/gloves/edge-impulse-standalone.wasm +0 -0
  106. package/examples/gloves/index.html +4 -1
  107. package/examples/gloves/run-impulse.js +135 -0
  108. package/examples/gloves/script.js +367 -51
  109. package/examples/graph/script.js +94 -37
  110. package/examples/microphone/gender.js +54 -0
  111. package/examples/microphone/index.html +102 -0
  112. package/examples/microphone/script.js +394 -0
  113. package/examples/microphone/utils.js +45 -0
  114. package/examples/microphone/whisper-realtime.js +166 -0
  115. package/examples/microphone/whisper.js +132 -0
  116. package/examples/punch/index.html +135 -0
  117. package/examples/punch/punch.tflite +0 -0
  118. package/examples/punch/script.js +169 -0
  119. package/examples/server/index.html +98 -22
  120. package/examples/server/script.js +317 -109
  121. package/examples/ukaton-firmware-update/merged-firmware.bin +0 -0
  122. package/examples/utils/aframe/aframe-master.min.js +2 -0
  123. package/examples/utils/aframe/bs-vibration.js +150 -0
  124. package/examples/utils/aframe/force-pushable.js +80 -0
  125. package/examples/utils/aframe/grabbable-anchor.js +46 -0
  126. package/examples/utils/aframe/grabbable-listener.js +31 -0
  127. package/examples/utils/aframe/grabbable-physics-body.js +190 -0
  128. package/examples/utils/aframe/grow-shrink.js +25 -0
  129. package/examples/utils/aframe/hand-punch.js +119 -0
  130. package/examples/utils/aframe/my-obb-collider.js +293 -0
  131. package/examples/utils/aframe/occlude-hand-tracking-controls.js +47 -0
  132. package/examples/utils/aframe/occlude-mesh.js +42 -0
  133. package/examples/utils/aframe/palm-up-detector.js +47 -0
  134. package/examples/utils/aframe/shadow-material.js +20 -0
  135. package/examples/utils/aframe/soft-shadow-light.js +9 -0
  136. package/examples/webxr-2/assets/3d/soccerBall.glb +0 -0
  137. package/examples/webxr-2/assets/audio/shellBounce.wav +0 -0
  138. package/examples/webxr-2/assets/audio/shellHit.wav +0 -0
  139. package/examples/webxr-2/assets/audio/shellKick.wav +0 -0
  140. package/examples/webxr-2/assets/audio/soccerBounce.wav +0 -0
  141. package/examples/webxr-2/assets/audio/soccerKick.mp3 +0 -0
  142. package/examples/webxr-2/assets/images/shellTexture.png +0 -0
  143. package/examples/webxr-2/components/bs-ankle.js +337 -0
  144. package/examples/webxr-2/components/coin.js +84 -0
  145. package/examples/webxr-2/components/custom-wrap.js +17 -0
  146. package/examples/webxr-2/components/goomba.js +3250 -0
  147. package/examples/webxr-2/components/init-shell-material.js +215 -0
  148. package/examples/webxr-2/components/platter.js +172 -0
  149. package/examples/webxr-2/components/shell.js +374 -0
  150. package/examples/webxr-2/components/soccer-ball.js +250 -0
  151. package/examples/webxr-2/components/squashed-goomba.js +249 -0
  152. package/examples/webxr-2/edge-impulse-standalone.js +7228 -0
  153. package/examples/webxr-2/edge-impulse-standalone.wasm +0 -0
  154. package/examples/webxr-2/index.html +996 -0
  155. package/examples/webxr-2/kick.tflite +0 -0
  156. package/examples/webxr-2/kick2.tflite +0 -0
  157. package/examples/webxr-2/run-impulse.js +135 -0
  158. package/examples/webxr-2/script.js +384 -0
  159. package/examples/webxr-3/components/bs-camera.js +65 -0
  160. package/examples/webxr-3/index.html +134 -0
  161. package/examples/webxr-3/script.js +432 -0
  162. package/package.json +2 -1
  163. package/src/.prettierrc +4 -0
  164. package/src/BS.ts +79 -8
  165. package/src/CameraManager.ts +497 -0
  166. package/src/Device.ts +691 -86
  167. package/src/DeviceInformationManager.ts +19 -10
  168. package/src/DeviceManager.ts +85 -25
  169. package/src/FileTransferManager.ts +145 -20
  170. package/src/InformationManager.ts +40 -15
  171. package/src/MicrophoneManager.ts +599 -0
  172. package/src/TfliteManager.ts +171 -25
  173. package/src/WifiManager.ts +323 -0
  174. package/src/connection/BaseConnectionManager.ts +130 -30
  175. package/src/connection/ClientConnectionManager.ts +34 -10
  176. package/src/connection/bluetooth/BluetoothConnectionManager.ts +8 -2
  177. package/src/connection/bluetooth/NobleConnectionManager.ts +147 -41
  178. package/src/connection/bluetooth/WebBluetoothConnectionManager.ts +99 -34
  179. package/src/connection/bluetooth/bluetoothUUIDs.ts +40 -13
  180. package/src/connection/udp/UDPConnectionManager.ts +356 -0
  181. package/src/connection/websocket/WebSocketConnectionManager.ts +282 -0
  182. package/src/devicePair/DevicePair.ts +95 -25
  183. package/src/devicePair/DevicePairPressureSensorDataManager.ts +27 -7
  184. package/src/scanner/BaseScanner.ts +49 -11
  185. package/src/scanner/NobleScanner.ts +76 -14
  186. package/src/sensor/MotionSensorDataManager.ts +21 -6
  187. package/src/sensor/PressureSensorDataManager.ts +37 -8
  188. package/src/sensor/SensorConfigurationManager.ts +73 -22
  189. package/src/sensor/SensorDataManager.ts +109 -23
  190. package/src/server/BaseClient.ts +150 -36
  191. package/src/server/BaseServer.ts +50 -2
  192. package/src/server/ServerUtils.ts +39 -9
  193. package/src/server/udp/UDPServer.ts +73 -22
  194. package/src/server/udp/UDPUtils.ts +9 -2
  195. package/src/server/websocket/WebSocketClient.ts +27 -7
  196. package/src/server/websocket/WebSocketUtils.ts +4 -2
  197. package/src/utils/AudioUtils.ts +65 -0
  198. package/src/utils/Console.ts +62 -9
  199. package/src/utils/ParseUtils.ts +24 -5
  200. package/src/utils/ThrottleUtils.ts +62 -0
  201. package/src/utils/Timer.ts +1 -1
  202. package/src/vibration/VibrationManager.ts +166 -40
@@ -0,0 +1,10 @@
1
+ import * as BS from "./BS.ts";
2
+ declare global {
3
+ var BS: typeof import("./BS.ts") | undefined;
4
+ }
5
+ declare const _default: typeof BS;
6
+ export default _default;
7
+ declare const _default_1: typeof BS;
8
+ export default _default_1;
9
+ /** BROWSER_END */
10
+ export * from "./BS.ts";
package/build/dts/BS.d.ts CHANGED
@@ -1,19 +1,32 @@
1
- export { setAllConsoleLevelFlags, setConsoleLevelFlagsForType } from "./utils/Console.ts";
1
+ export { setAllConsoleLevelFlags, setConsoleLevelFlagsForType, } from "./utils/Console.ts";
2
2
  export * as Environment from "./utils/environment.ts";
3
3
  export { Vector2, Vector3, Quaternion, Euler } from "./utils/MathUtils.ts";
4
4
  export { default as Device, DeviceEvent, DeviceEventMap, DeviceEventListenerMap, BoundDeviceEventListeners, } from "./Device.ts";
5
5
  export { default as DeviceManager, DeviceManagerEvent, DeviceManagerEventMap, DeviceManagerEventListenerMap, BoundDeviceManagerEventListeners, } from "./DeviceManager.ts";
6
6
  export { DeviceInformation } from "./DeviceInformationManager.ts";
7
- export { DeviceType, DeviceTypes, MinNameLength, MaxNameLength, Sides, Side } from "./InformationManager.ts";
8
- export { SensorType, SensorTypes, ContinuousSensorType, ContinuousSensorTypes } from "./sensor/SensorDataManager.ts";
9
- export { MaxSensorRate, SensorRateStep, SensorConfiguration } from "./sensor/SensorConfigurationManager.ts";
10
- export { DefaultNumberOfPressureSensors, PressureData } from "./sensor/PressureSensorDataManager.ts";
7
+ export { DeviceType, DeviceTypes, MinNameLength, MaxNameLength, Sides, Side, } from "./InformationManager.ts";
8
+ export { MinWifiSSIDLength, MaxWifiSSIDLength, MinWifiPasswordLength, MaxWifiPasswordLength, } from "./WifiManager.ts";
9
+ export { SensorType, SensorTypes, ContinuousSensorType, ContinuousSensorTypes, } from "./sensor/SensorDataManager.ts";
10
+ export { MaxSensorRate, SensorRateStep, SensorConfiguration, } from "./sensor/SensorConfigurationManager.ts";
11
+ export { DefaultNumberOfPressureSensors, PressureData, } from "./sensor/PressureSensorDataManager.ts";
11
12
  export { CenterOfPressure } from "./utils/CenterOfPressureHelper.ts";
12
13
  export { VibrationConfiguration, VibrationLocation, VibrationLocations, VibrationType, VibrationTypes, MaxNumberOfVibrationWaveformEffectSegments, MaxVibrationWaveformSegmentDuration, MaxVibrationWaveformEffectSegmentDelay, MaxVibrationWaveformEffectSegmentLoopCount, MaxNumberOfVibrationWaveformSegments, MaxVibrationWaveformEffectSequenceLoopCount, } from "./vibration/VibrationManager.ts";
13
- export { VibrationWaveformEffect, VibrationWaveformEffects } from "./vibration/VibrationWaveformEffects.ts";
14
- export { FileType, FileTypes, FileTransferDirection, FileTransferDirections } from "./FileTransferManager.ts";
15
- export { TfliteSensorType, TfliteSensorTypes, TfliteTask, TfliteTasks } from "./TfliteManager.ts";
14
+ export { VibrationWaveformEffect, VibrationWaveformEffects, } from "./vibration/VibrationWaveformEffects.ts";
15
+ export { FileType, FileTypes, FileTransferDirection, FileTransferDirections, } from "./FileTransferManager.ts";
16
+ export { TfliteSensorType, TfliteSensorTypes, TfliteTask, TfliteTasks, TfliteFileConfiguration as TfliteFileConfiguration, } from "./TfliteManager.ts";
17
+ export { CameraConfiguration, CameraCommand, CameraCommands, CameraConfigurationType, CameraConfigurationTypes, } from "./CameraManager.ts";
18
+ export { MicrophoneConfiguration, MicrophoneCommand, MicrophoneCommands, MicrophoneConfigurationType, MicrophoneConfigurationTypes, MicrophoneConfigurationValues, } from "./MicrophoneManager.ts";
16
19
  export { default as DevicePair, DevicePairEvent, DevicePairEventMap, DevicePairEventListenerMap, BoundDevicePairEventListeners, DevicePairType, DevicePairTypes, } from "./devicePair/DevicePair.ts";
20
+ import { addEventListeners, removeEventListeners } from "./utils/EventUtils.ts";
21
+ export declare const EventUtils: {
22
+ addEventListeners: typeof addEventListeners;
23
+ removeEventListeners: typeof removeEventListeners;
24
+ };
25
+ import { throttle, debounce } from "./utils/ThrottleUtils.ts";
26
+ export declare const ThrottleUtils: {
27
+ throttle: typeof throttle;
28
+ debounce: typeof debounce;
29
+ };
17
30
  export { DiscoveredDevice } from "./scanner/BaseScanner.ts";
18
31
  /** NODE_START */
19
32
  export { default as Scanner } from "./scanner/Scanner.ts";
@@ -0,0 +1,72 @@
1
+ import Device, { SendMessageCallback } from "./Device.ts";
2
+ import EventDispatcher from "./utils/EventDispatcher.ts";
3
+ export declare const CameraSensorTypes: readonly ["camera"];
4
+ export type CameraSensorType = (typeof CameraSensorTypes)[number];
5
+ export declare const CameraCommands: readonly ["focus", "takePicture", "stop", "sleep", "wake"];
6
+ export type CameraCommand = (typeof CameraCommands)[number];
7
+ export declare const CameraStatuses: readonly ["idle", "focusing", "takingPicture", "asleep"];
8
+ export type CameraStatus = (typeof CameraStatuses)[number];
9
+ export declare const CameraDataTypes: readonly ["headerSize", "header", "imageSize", "image", "footerSize", "footer"];
10
+ export type CameraDataType = (typeof CameraDataTypes)[number];
11
+ export declare const CameraConfigurationTypes: readonly ["resolution", "qualityFactor", "shutter", "gain", "redGain", "greenGain", "blueGain"];
12
+ export type CameraConfigurationType = (typeof CameraConfigurationTypes)[number];
13
+ export declare const CameraMessageTypes: readonly ["cameraStatus", "cameraCommand", "getCameraConfiguration", "setCameraConfiguration", "cameraData"];
14
+ export type CameraMessageType = (typeof CameraMessageTypes)[number];
15
+ export type CameraConfiguration = {
16
+ [cameraConfigurationType in CameraConfigurationType]?: number;
17
+ };
18
+ export type CameraConfigurationRanges = {
19
+ [cameraConfigurationType in CameraConfigurationType]: {
20
+ min: number;
21
+ max: number;
22
+ };
23
+ };
24
+ export declare const RequiredCameraMessageTypes: CameraMessageType[];
25
+ export declare const CameraEventTypes: readonly ["cameraStatus", "cameraCommand", "getCameraConfiguration", "setCameraConfiguration", "cameraData", "cameraImageProgress", "cameraImage"];
26
+ export type CameraEventType = (typeof CameraEventTypes)[number];
27
+ export interface CameraEventMessages {
28
+ cameraStatus: {
29
+ cameraStatus: CameraStatus;
30
+ previousCameraStatus: CameraStatus;
31
+ };
32
+ getCameraConfiguration: {
33
+ cameraConfiguration: CameraConfiguration;
34
+ };
35
+ cameraImageProgress: {
36
+ progress: number;
37
+ type: CameraDataType;
38
+ };
39
+ cameraImage: {
40
+ blob: Blob;
41
+ url: string;
42
+ };
43
+ }
44
+ export type CameraEventDispatcher = EventDispatcher<Device, CameraEventType, CameraEventMessages>;
45
+ export type SendCameraMessageCallback = SendMessageCallback<CameraMessageType>;
46
+ declare class CameraManager {
47
+ #private;
48
+ constructor();
49
+ sendMessage: SendCameraMessageCallback;
50
+ eventDispatcher: CameraEventDispatcher;
51
+ get waitForEvent(): <T extends "cameraStatus" | "cameraCommand" | "getCameraConfiguration" | "setCameraConfiguration" | "cameraData" | "cameraImageProgress" | "cameraImage">(type: T) => Promise<{
52
+ type: T;
53
+ target: Device;
54
+ message: CameraEventMessages[T];
55
+ }>;
56
+ requestRequiredInformation(): void;
57
+ get cameraStatus(): "idle" | "focusing" | "takingPicture" | "asleep";
58
+ focus(): Promise<void>;
59
+ takePicture(): Promise<void>;
60
+ stop(): Promise<void>;
61
+ sleep(): Promise<void>;
62
+ wake(): Promise<void>;
63
+ get cameraConfiguration(): CameraConfiguration;
64
+ get availableCameraConfigurationTypes(): ("resolution" | "qualityFactor" | "shutter" | "gain" | "redGain" | "greenGain" | "blueGain")[];
65
+ get cameraConfigurationRanges(): CameraConfigurationRanges;
66
+ setCameraConfiguration(newCameraConfiguration: CameraConfiguration): Promise<void>;
67
+ static AssertValidCameraConfigurationType(cameraConfigurationType: CameraConfigurationType): void;
68
+ static AssertValidCameraConfigurationTypeEnum(cameraConfigurationTypeEnum: number): void;
69
+ parseMessage(messageType: CameraMessageType, dataView: DataView): void;
70
+ clear(): void;
71
+ }
72
+ export default CameraManager;
@@ -1,17 +1,20 @@
1
1
  import EventDispatcher, { BoundEventListeners, Event, EventListenerMap, EventMap } from "./utils/EventDispatcher.ts";
2
- import BaseConnectionManager, { TxRxMessageType, ConnectionStatus, ConnectionMessageType, ConnectionStatusEventMessages } from "./connection/BaseConnectionManager.ts";
2
+ import BaseConnectionManager, { TxRxMessageType, ConnectionStatus, ConnectionMessageType, ConnectionStatusEventMessages, ConnectOptions } from "./connection/BaseConnectionManager.ts";
3
3
  import { SensorConfiguration, SensorConfigurationEventMessages } from "./sensor/SensorConfigurationManager.ts";
4
4
  import { SensorDataEventMessages, SensorType } from "./sensor/SensorDataManager.ts";
5
5
  import { VibrationConfiguration } from "./vibration/VibrationManager.ts";
6
6
  import { FileTransferEventMessages, FileType } from "./FileTransferManager.ts";
7
- import { TfliteEventMessages } from "./TfliteManager.ts";
7
+ import { TfliteEventMessages, TfliteFileConfiguration } from "./TfliteManager.ts";
8
8
  import { FirmwareEventMessages } from "./FirmwareManager.ts";
9
9
  import { DeviceInformationEventMessages } from "./DeviceInformationManager.ts";
10
10
  import InformationManager, { DeviceType, InformationEventMessages } from "./InformationManager.ts";
11
11
  import { FileLike } from "./utils/ArrayBufferUtils.ts";
12
- export declare const DeviceEventTypes: readonly ["connectionMessage", "notConnected", "connecting", "connected", "disconnecting", "connectionStatus", "isConnected", "rx", "tx", "batteryLevel", "isCharging", "getBatteryCurrent", "getMtu", "getId", "getName", "setName", "getType", "setType", "getCurrentTime", "setCurrentTime", "manufacturerName", "modelNumber", "softwareRevision", "hardwareRevision", "firmwareRevision", "pnpId", "serialNumber", "deviceInformation", "getSensorConfiguration", "setSensorConfiguration", "getPressurePositions", "getSensorScalars", "sensorData", "pressure", "acceleration", "gravity", "linearAcceleration", "gyroscope", "magnetometer", "gameRotation", "rotation", "orientation", "activity", "stepCounter", "stepDetector", "deviceOrientation", "barometer", "maxFileLength", "getFileType", "setFileType", "getFileLength", "setFileLength", "getFileChecksum", "setFileChecksum", "setFileTransferCommand", "fileTransferStatus", "getFileBlock", "setFileBlock", "fileBytesTransferred", "fileTransferProgress", "fileTransferComplete", "fileReceived", "getTfliteName", "setTfliteName", "getTfliteTask", "setTfliteTask", "getTfliteSampleRate", "setTfliteSampleRate", "getTfliteSensorTypes", "setTfliteSensorTypes", "tfliteIsReady", "getTfliteCaptureDelay", "setTfliteCaptureDelay", "getTfliteThreshold", "setTfliteThreshold", "getTfliteInferencingEnabled", "setTfliteInferencingEnabled", "tfliteInference", "smp", "firmwareImages", "firmwareUploadProgress", "firmwareStatus", "firmwareUploadComplete"];
12
+ import { CameraEventMessages } from "./CameraManager.ts";
13
+ import { MicrophoneEventMessages } from "./MicrophoneManager.ts";
14
+ import { WifiEventMessages } from "./WifiManager.ts";
15
+ export declare const DeviceEventTypes: readonly ["connectionMessage", "notConnected", "connecting", "connected", "disconnecting", "connectionStatus", "isConnected", "rx", "tx", "batteryLevel", "isCharging", "getBatteryCurrent", "getMtu", "getId", "getName", "setName", "getType", "setType", "getCurrentTime", "setCurrentTime", "manufacturerName", "modelNumber", "hardwareRevision", "firmwareRevision", "softwareRevision", "pnpId", "serialNumber", "deviceInformation", "getSensorConfiguration", "setSensorConfiguration", "getPressurePositions", "getSensorScalars", "sensorData", "pressure", "acceleration", "gravity", "linearAcceleration", "gyroscope", "magnetometer", "gameRotation", "rotation", "orientation", "activity", "stepCounter", "stepDetector", "deviceOrientation", "tapDetector", "barometer", "camera", "microphone", "getVibrationLocations", "triggerVibration", "getFileTypes", "maxFileLength", "getFileType", "setFileType", "getFileLength", "setFileLength", "getFileChecksum", "setFileChecksum", "setFileTransferCommand", "fileTransferStatus", "getFileBlock", "setFileBlock", "fileBytesTransferred", "fileTransferProgress", "fileTransferComplete", "fileReceived", "getTfliteName", "setTfliteName", "getTfliteTask", "setTfliteTask", "getTfliteSampleRate", "setTfliteSampleRate", "getTfliteSensorTypes", "setTfliteSensorTypes", "tfliteIsReady", "getTfliteCaptureDelay", "setTfliteCaptureDelay", "getTfliteThreshold", "setTfliteThreshold", "getTfliteInferencingEnabled", "setTfliteInferencingEnabled", "tfliteInference", "isWifiAvailable", "getWifiSSID", "setWifiSSID", "getWifiPassword", "setWifiPassword", "getWifiConnectionEnabled", "setWifiConnectionEnabled", "isWifiConnected", "ipAddress", "isWifiSecure", "cameraStatus", "cameraCommand", "getCameraConfiguration", "setCameraConfiguration", "cameraData", "cameraImageProgress", "cameraImage", "microphoneStatus", "microphoneCommand", "getMicrophoneConfiguration", "setMicrophoneConfiguration", "microphoneData", "isRecordingMicrophone", "microphoneRecording", "smp", "firmwareImages", "firmwareUploadProgress", "firmwareStatus", "firmwareUploadComplete"];
13
16
  export type DeviceEventType = (typeof DeviceEventTypes)[number];
14
- export interface DeviceEventMessages extends ConnectionStatusEventMessages, DeviceInformationEventMessages, InformationEventMessages, SensorDataEventMessages, SensorConfigurationEventMessages, TfliteEventMessages, FileTransferEventMessages, FirmwareEventMessages {
17
+ export interface DeviceEventMessages extends ConnectionStatusEventMessages, DeviceInformationEventMessages, InformationEventMessages, SensorDataEventMessages, SensorConfigurationEventMessages, TfliteEventMessages, FileTransferEventMessages, WifiEventMessages, CameraEventMessages, MicrophoneEventMessages, FirmwareEventMessages {
15
18
  batteryLevel: {
16
19
  batteryLevel: number;
17
20
  };
@@ -36,29 +39,29 @@ declare class Device {
36
39
  get bluetoothId(): string | undefined;
37
40
  get isAvailable(): boolean | undefined;
38
41
  constructor();
39
- get addEventListener(): <T extends "pressure" | "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "barometer" | "getPressurePositions" | "getSensorScalars" | "sensorData" | "getSensorConfiguration" | "setSensorConfiguration" | "getTfliteName" | "setTfliteName" | "getTfliteTask" | "setTfliteTask" | "getTfliteSampleRate" | "setTfliteSampleRate" | "getTfliteSensorTypes" | "setTfliteSensorTypes" | "tfliteIsReady" | "getTfliteCaptureDelay" | "setTfliteCaptureDelay" | "getTfliteThreshold" | "setTfliteThreshold" | "getTfliteInferencingEnabled" | "setTfliteInferencingEnabled" | "tfliteInference" | "manufacturerName" | "modelNumber" | "softwareRevision" | "hardwareRevision" | "firmwareRevision" | "pnpId" | "serialNumber" | "deviceInformation" | "isCharging" | "getBatteryCurrent" | "getMtu" | "getId" | "getName" | "setName" | "getType" | "setType" | "getCurrentTime" | "setCurrentTime" | "notConnected" | "connecting" | "connected" | "disconnecting" | "connectionStatus" | "isConnected" | "smp" | "batteryLevel" | "rx" | "tx" | "firmwareImages" | "firmwareUploadProgress" | "firmwareStatus" | "firmwareUploadComplete" | "connectionMessage">(type: T, listener: (event: {
42
+ get addEventListener(): <T extends "pressure" | "getFileTypes" | "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "tapDetector" | "barometer" | "camera" | "cameraStatus" | "cameraCommand" | "getCameraConfiguration" | "setCameraConfiguration" | "cameraData" | "cameraImageProgress" | "cameraImage" | "microphone" | "microphoneStatus" | "microphoneCommand" | "getMicrophoneConfiguration" | "setMicrophoneConfiguration" | "microphoneData" | "isRecordingMicrophone" | "microphoneRecording" | "getPressurePositions" | "getSensorScalars" | "sensorData" | "getSensorConfiguration" | "setSensorConfiguration" | "getTfliteName" | "setTfliteName" | "getTfliteTask" | "setTfliteTask" | "getTfliteSampleRate" | "setTfliteSampleRate" | "getTfliteSensorTypes" | "setTfliteSensorTypes" | "tfliteIsReady" | "getTfliteCaptureDelay" | "setTfliteCaptureDelay" | "getTfliteThreshold" | "setTfliteThreshold" | "getTfliteInferencingEnabled" | "setTfliteInferencingEnabled" | "tfliteInference" | "manufacturerName" | "modelNumber" | "hardwareRevision" | "firmwareRevision" | "softwareRevision" | "pnpId" | "serialNumber" | "deviceInformation" | "isCharging" | "getBatteryCurrent" | "getMtu" | "getId" | "getName" | "setName" | "getType" | "setType" | "getCurrentTime" | "setCurrentTime" | "getVibrationLocations" | "triggerVibration" | "isWifiAvailable" | "getWifiSSID" | "setWifiSSID" | "getWifiPassword" | "setWifiPassword" | "getWifiConnectionEnabled" | "setWifiConnectionEnabled" | "isWifiConnected" | "ipAddress" | "isWifiSecure" | "notConnected" | "connecting" | "connected" | "disconnecting" | "connectionStatus" | "isConnected" | "smp" | "batteryLevel" | "rx" | "tx" | "firmwareImages" | "firmwareUploadProgress" | "firmwareStatus" | "firmwareUploadComplete" | "connectionMessage">(type: T, listener: (event: {
40
43
  type: T;
41
44
  target: Device;
42
45
  message: DeviceEventMessages[T];
43
46
  }) => void, options?: {
44
47
  once?: boolean;
45
48
  }) => void;
46
- get removeEventListener(): <T extends "pressure" | "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "barometer" | "getPressurePositions" | "getSensorScalars" | "sensorData" | "getSensorConfiguration" | "setSensorConfiguration" | "getTfliteName" | "setTfliteName" | "getTfliteTask" | "setTfliteTask" | "getTfliteSampleRate" | "setTfliteSampleRate" | "getTfliteSensorTypes" | "setTfliteSensorTypes" | "tfliteIsReady" | "getTfliteCaptureDelay" | "setTfliteCaptureDelay" | "getTfliteThreshold" | "setTfliteThreshold" | "getTfliteInferencingEnabled" | "setTfliteInferencingEnabled" | "tfliteInference" | "manufacturerName" | "modelNumber" | "softwareRevision" | "hardwareRevision" | "firmwareRevision" | "pnpId" | "serialNumber" | "deviceInformation" | "isCharging" | "getBatteryCurrent" | "getMtu" | "getId" | "getName" | "setName" | "getType" | "setType" | "getCurrentTime" | "setCurrentTime" | "notConnected" | "connecting" | "connected" | "disconnecting" | "connectionStatus" | "isConnected" | "smp" | "batteryLevel" | "rx" | "tx" | "firmwareImages" | "firmwareUploadProgress" | "firmwareStatus" | "firmwareUploadComplete" | "connectionMessage">(type: T, listener: (event: {
49
+ get removeEventListener(): <T extends "pressure" | "getFileTypes" | "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "tapDetector" | "barometer" | "camera" | "cameraStatus" | "cameraCommand" | "getCameraConfiguration" | "setCameraConfiguration" | "cameraData" | "cameraImageProgress" | "cameraImage" | "microphone" | "microphoneStatus" | "microphoneCommand" | "getMicrophoneConfiguration" | "setMicrophoneConfiguration" | "microphoneData" | "isRecordingMicrophone" | "microphoneRecording" | "getPressurePositions" | "getSensorScalars" | "sensorData" | "getSensorConfiguration" | "setSensorConfiguration" | "getTfliteName" | "setTfliteName" | "getTfliteTask" | "setTfliteTask" | "getTfliteSampleRate" | "setTfliteSampleRate" | "getTfliteSensorTypes" | "setTfliteSensorTypes" | "tfliteIsReady" | "getTfliteCaptureDelay" | "setTfliteCaptureDelay" | "getTfliteThreshold" | "setTfliteThreshold" | "getTfliteInferencingEnabled" | "setTfliteInferencingEnabled" | "tfliteInference" | "manufacturerName" | "modelNumber" | "hardwareRevision" | "firmwareRevision" | "softwareRevision" | "pnpId" | "serialNumber" | "deviceInformation" | "isCharging" | "getBatteryCurrent" | "getMtu" | "getId" | "getName" | "setName" | "getType" | "setType" | "getCurrentTime" | "setCurrentTime" | "getVibrationLocations" | "triggerVibration" | "isWifiAvailable" | "getWifiSSID" | "setWifiSSID" | "getWifiPassword" | "setWifiPassword" | "getWifiConnectionEnabled" | "setWifiConnectionEnabled" | "isWifiConnected" | "ipAddress" | "isWifiSecure" | "notConnected" | "connecting" | "connected" | "disconnecting" | "connectionStatus" | "isConnected" | "smp" | "batteryLevel" | "rx" | "tx" | "firmwareImages" | "firmwareUploadProgress" | "firmwareStatus" | "firmwareUploadComplete" | "connectionMessage">(type: T, listener: (event: {
47
50
  type: T;
48
51
  target: Device;
49
52
  message: DeviceEventMessages[T];
50
53
  }) => void) => void;
51
- get waitForEvent(): <T extends "pressure" | "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "barometer" | "getPressurePositions" | "getSensorScalars" | "sensorData" | "getSensorConfiguration" | "setSensorConfiguration" | "getTfliteName" | "setTfliteName" | "getTfliteTask" | "setTfliteTask" | "getTfliteSampleRate" | "setTfliteSampleRate" | "getTfliteSensorTypes" | "setTfliteSensorTypes" | "tfliteIsReady" | "getTfliteCaptureDelay" | "setTfliteCaptureDelay" | "getTfliteThreshold" | "setTfliteThreshold" | "getTfliteInferencingEnabled" | "setTfliteInferencingEnabled" | "tfliteInference" | "manufacturerName" | "modelNumber" | "softwareRevision" | "hardwareRevision" | "firmwareRevision" | "pnpId" | "serialNumber" | "deviceInformation" | "isCharging" | "getBatteryCurrent" | "getMtu" | "getId" | "getName" | "setName" | "getType" | "setType" | "getCurrentTime" | "setCurrentTime" | "notConnected" | "connecting" | "connected" | "disconnecting" | "connectionStatus" | "isConnected" | "smp" | "batteryLevel" | "rx" | "tx" | "firmwareImages" | "firmwareUploadProgress" | "firmwareStatus" | "firmwareUploadComplete" | "connectionMessage">(type: T) => Promise<{
54
+ get waitForEvent(): <T extends "pressure" | "getFileTypes" | "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "tapDetector" | "barometer" | "camera" | "cameraStatus" | "cameraCommand" | "getCameraConfiguration" | "setCameraConfiguration" | "cameraData" | "cameraImageProgress" | "cameraImage" | "microphone" | "microphoneStatus" | "microphoneCommand" | "getMicrophoneConfiguration" | "setMicrophoneConfiguration" | "microphoneData" | "isRecordingMicrophone" | "microphoneRecording" | "getPressurePositions" | "getSensorScalars" | "sensorData" | "getSensorConfiguration" | "setSensorConfiguration" | "getTfliteName" | "setTfliteName" | "getTfliteTask" | "setTfliteTask" | "getTfliteSampleRate" | "setTfliteSampleRate" | "getTfliteSensorTypes" | "setTfliteSensorTypes" | "tfliteIsReady" | "getTfliteCaptureDelay" | "setTfliteCaptureDelay" | "getTfliteThreshold" | "setTfliteThreshold" | "getTfliteInferencingEnabled" | "setTfliteInferencingEnabled" | "tfliteInference" | "manufacturerName" | "modelNumber" | "hardwareRevision" | "firmwareRevision" | "softwareRevision" | "pnpId" | "serialNumber" | "deviceInformation" | "isCharging" | "getBatteryCurrent" | "getMtu" | "getId" | "getName" | "setName" | "getType" | "setType" | "getCurrentTime" | "setCurrentTime" | "getVibrationLocations" | "triggerVibration" | "isWifiAvailable" | "getWifiSSID" | "setWifiSSID" | "getWifiPassword" | "setWifiPassword" | "getWifiConnectionEnabled" | "setWifiConnectionEnabled" | "isWifiConnected" | "ipAddress" | "isWifiSecure" | "notConnected" | "connecting" | "connected" | "disconnecting" | "connectionStatus" | "isConnected" | "smp" | "batteryLevel" | "rx" | "tx" | "firmwareImages" | "firmwareUploadProgress" | "firmwareStatus" | "firmwareUploadComplete" | "connectionMessage">(type: T) => Promise<{
52
55
  type: T;
53
56
  target: Device;
54
57
  message: DeviceEventMessages[T];
55
58
  }>;
56
- get removeEventListeners(): <T extends "pressure" | "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "barometer" | "getPressurePositions" | "getSensorScalars" | "sensorData" | "getSensorConfiguration" | "setSensorConfiguration" | "getTfliteName" | "setTfliteName" | "getTfliteTask" | "setTfliteTask" | "getTfliteSampleRate" | "setTfliteSampleRate" | "getTfliteSensorTypes" | "setTfliteSensorTypes" | "tfliteIsReady" | "getTfliteCaptureDelay" | "setTfliteCaptureDelay" | "getTfliteThreshold" | "setTfliteThreshold" | "getTfliteInferencingEnabled" | "setTfliteInferencingEnabled" | "tfliteInference" | "manufacturerName" | "modelNumber" | "softwareRevision" | "hardwareRevision" | "firmwareRevision" | "pnpId" | "serialNumber" | "deviceInformation" | "isCharging" | "getBatteryCurrent" | "getMtu" | "getId" | "getName" | "setName" | "getType" | "setType" | "getCurrentTime" | "setCurrentTime" | "notConnected" | "connecting" | "connected" | "disconnecting" | "connectionStatus" | "isConnected" | "smp" | "batteryLevel" | "rx" | "tx" | "firmwareImages" | "firmwareUploadProgress" | "firmwareStatus" | "firmwareUploadComplete" | "connectionMessage">(type: T) => void;
59
+ get removeEventListeners(): <T extends "pressure" | "getFileTypes" | "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "tapDetector" | "barometer" | "camera" | "cameraStatus" | "cameraCommand" | "getCameraConfiguration" | "setCameraConfiguration" | "cameraData" | "cameraImageProgress" | "cameraImage" | "microphone" | "microphoneStatus" | "microphoneCommand" | "getMicrophoneConfiguration" | "setMicrophoneConfiguration" | "microphoneData" | "isRecordingMicrophone" | "microphoneRecording" | "getPressurePositions" | "getSensorScalars" | "sensorData" | "getSensorConfiguration" | "setSensorConfiguration" | "getTfliteName" | "setTfliteName" | "getTfliteTask" | "setTfliteTask" | "getTfliteSampleRate" | "setTfliteSampleRate" | "getTfliteSensorTypes" | "setTfliteSensorTypes" | "tfliteIsReady" | "getTfliteCaptureDelay" | "setTfliteCaptureDelay" | "getTfliteThreshold" | "setTfliteThreshold" | "getTfliteInferencingEnabled" | "setTfliteInferencingEnabled" | "tfliteInference" | "manufacturerName" | "modelNumber" | "hardwareRevision" | "firmwareRevision" | "softwareRevision" | "pnpId" | "serialNumber" | "deviceInformation" | "isCharging" | "getBatteryCurrent" | "getMtu" | "getId" | "getName" | "setName" | "getType" | "setType" | "getCurrentTime" | "setCurrentTime" | "getVibrationLocations" | "triggerVibration" | "isWifiAvailable" | "getWifiSSID" | "setWifiSSID" | "getWifiPassword" | "setWifiPassword" | "getWifiConnectionEnabled" | "setWifiConnectionEnabled" | "isWifiConnected" | "ipAddress" | "isWifiSecure" | "notConnected" | "connecting" | "connected" | "disconnecting" | "connectionStatus" | "isConnected" | "smp" | "batteryLevel" | "rx" | "tx" | "firmwareImages" | "firmwareUploadProgress" | "firmwareStatus" | "firmwareUploadComplete" | "connectionMessage">(type: T) => void;
57
60
  get removeAllEventListeners(): () => void;
58
61
  get connectionManager(): BaseConnectionManager | undefined;
59
62
  set connectionManager(newConnectionManager: BaseConnectionManager | undefined);
60
63
  private sendTxMessages;
61
- connect(): Promise<void>;
64
+ connect(options?: ConnectOptions): Promise<void>;
62
65
  get isConnected(): boolean;
63
66
  get canReconnect(): boolean | undefined;
64
67
  reconnect(): Promise<void | undefined>;
@@ -67,7 +70,7 @@ declare class Device {
67
70
  static set ReconnectOnDisconnection(newReconnectOnDisconnection: boolean);
68
71
  get reconnectOnDisconnection(): boolean;
69
72
  set reconnectOnDisconnection(newReconnectOnDisconnection: boolean);
70
- get connectionType(): "webBluetooth" | "noble" | "client" | undefined;
73
+ get connectionType(): "webBluetooth" | "noble" | "client" | "webSocket" | "udp" | undefined;
71
74
  disconnect(): Promise<void>;
72
75
  toggleConnection(): void;
73
76
  get connectionStatus(): ConnectionStatus;
@@ -90,7 +93,7 @@ declare class Device {
90
93
  get side(): "left" | "right";
91
94
  get mtu(): number;
92
95
  get sensorTypes(): SensorType[];
93
- get continuousSensorTypes(): ("pressure" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "barometer")[];
96
+ get continuousSensorTypes(): ("pressure" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "barometer")[];
94
97
  get sensorConfiguration(): SensorConfiguration;
95
98
  setSensorConfiguration(newSensorConfiguration: SensorConfiguration, clearRest?: boolean): Promise<void>;
96
99
  clearSensorConfiguration(): Promise<void>;
@@ -100,20 +103,24 @@ declare class Device {
100
103
  set clearSensorConfigurationOnLeave(newClearSensorConfigurationOnLeave: boolean);
101
104
  get numberOfPressureSensors(): number;
102
105
  resetPressureRange(): void;
106
+ get vibrationLocations(): ("front" | "rear")[];
103
107
  triggerVibration(vibrationConfigurations: VibrationConfiguration[], sendImmediately?: boolean): Promise<void>;
108
+ get fileTypes(): ("tflite" | "wifiServerCert" | "wifiServerKey")[];
104
109
  get maxFileLength(): number;
110
+ get validFileTypes(): ("tflite" | "wifiServerCert" | "wifiServerKey")[];
105
111
  sendFile(fileType: FileType, file: FileLike): Promise<void>;
106
112
  receiveFile(fileType: FileType): Promise<void>;
107
113
  get fileTransferStatus(): "idle" | "sending" | "receiving";
108
114
  cancelFileTransfer(): void;
109
115
  get tfliteName(): string;
110
116
  get setTfliteName(): (newName: string, sendImmediately?: boolean) => Promise<void>;
117
+ sendTfliteConfiguration(configuration: TfliteFileConfiguration): Promise<void>;
111
118
  get tfliteTask(): "classification" | "regression";
112
119
  get setTfliteTask(): (newTask: import("./TfliteManager.ts").TfliteTask, sendImmediately?: boolean) => Promise<void>;
113
120
  get tfliteSampleRate(): number;
114
121
  get setTfliteSampleRate(): (newSampleRate: number, sendImmediately?: boolean) => Promise<void>;
115
- get tfliteSensorTypes(): ("pressure" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "barometer")[];
116
- get allowedTfliteSensorTypes(): ("pressure" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "barometer")[];
122
+ get tfliteSensorTypes(): ("pressure" | "linearAcceleration" | "gyroscope" | "magnetometer")[];
123
+ get allowedTfliteSensorTypes(): ("pressure" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "tapDetector" | "barometer" | "camera" | "microphone")[];
117
124
  get setTfliteSensorTypes(): (newSensorTypes: SensorType[], sendImmediately?: boolean) => Promise<void>;
118
125
  get tfliteIsReady(): boolean;
119
126
  get tfliteInferencingEnabled(): boolean;
@@ -128,6 +135,7 @@ declare class Device {
128
135
  get canUpdateFirmware(): boolean | undefined;
129
136
  private sendSmpMessage;
130
137
  get uploadFirmware(): (file: FileLike) => Promise<void>;
138
+ get canReset(): boolean | undefined;
131
139
  reset(): Promise<void>;
132
140
  get firmwareStatus(): "idle" | "uploading" | "uploaded" | "pending" | "testing" | "erasing";
133
141
  get getFirmwareImages(): () => Promise<void>;
@@ -138,5 +146,48 @@ declare class Device {
138
146
  get isServerSide(): boolean;
139
147
  set isServerSide(newIsServerSide: boolean);
140
148
  get isUkaton(): boolean;
149
+ get isWifiAvailable(): boolean;
150
+ get wifiSSID(): string;
151
+ setWifiSSID(newWifiSSID: string): Promise<void>;
152
+ get wifiPassword(): string;
153
+ setWifiPassword(newWifiPassword: string): Promise<void>;
154
+ get isWifiConnected(): boolean;
155
+ get ipAddress(): string | undefined;
156
+ get wifiConnectionEnabled(): boolean;
157
+ get enableWifiConnection(): () => Promise<void>;
158
+ get setWifiConnectionEnabled(): (newWifiConnectionEnabled: boolean, sendImmediately?: boolean) => Promise<void>;
159
+ get disableWifiConnection(): () => Promise<void>;
160
+ get toggleWifiConnection(): () => Promise<void>;
161
+ get isWifiSecure(): boolean;
162
+ reconnectViaWebSockets(): Promise<void>;
163
+ reconnectViaUDP(): Promise<void>;
164
+ get hasCamera(): boolean;
165
+ get cameraStatus(): "idle" | "focusing" | "takingPicture" | "asleep";
166
+ takePicture(): Promise<void>;
167
+ focusCamera(): Promise<void>;
168
+ stopCamera(): Promise<void>;
169
+ wakeCamera(): Promise<void>;
170
+ sleepCamera(): Promise<void>;
171
+ get cameraConfiguration(): import("./CameraManager.ts").CameraConfiguration;
172
+ get availableCameraConfigurationTypes(): ("resolution" | "qualityFactor" | "shutter" | "gain" | "redGain" | "greenGain" | "blueGain")[];
173
+ get cameraConfigurationRanges(): import("./CameraManager.ts").CameraConfigurationRanges;
174
+ get setCameraConfiguration(): (newCameraConfiguration: import("./CameraManager.ts").CameraConfiguration) => Promise<void>;
175
+ get hasMicrophone(): boolean;
176
+ get microphoneStatus(): "idle" | "vad" | "streaming";
177
+ startMicrophone(): Promise<void>;
178
+ stopMicrophone(): Promise<void>;
179
+ enableMicrophoneVad(): Promise<void>;
180
+ toggleMicrophone(): Promise<void>;
181
+ get microphoneConfiguration(): import("./MicrophoneManager.ts").MicrophoneConfiguration;
182
+ get availableMicrophoneConfigurationTypes(): ("sampleRate" | "bitDepth")[];
183
+ get setMicrophoneConfiguration(): (newMicrophoneConfiguration: import("./MicrophoneManager.ts").MicrophoneConfiguration) => Promise<void>;
184
+ get audioContext(): AudioContext | undefined;
185
+ set audioContext(newAudioContext: AudioContext | undefined);
186
+ get microphoneMediaStreamDestination(): MediaStreamAudioDestinationNode;
187
+ get microphoneGainNode(): GainNode;
188
+ get isRecordingMicrophone(): boolean;
189
+ startRecordingMicrophone(): void;
190
+ stopRecordingMicrophone(): void;
191
+ toggleMicrophoneRecording(): void;
141
192
  }
142
193
  export default Device;
@@ -15,9 +15,9 @@ export interface DeviceInformation {
15
15
  pnpId: PnpId;
16
16
  serialNumber: string;
17
17
  }
18
- export declare const DeviceInformationMessageTypes: readonly ["manufacturerName", "modelNumber", "softwareRevision", "hardwareRevision", "firmwareRevision", "pnpId", "serialNumber"];
19
- export type DeviceInformationMessageType = (typeof DeviceInformationMessageTypes)[number];
20
- export declare const DeviceInformationEventTypes: readonly ["manufacturerName", "modelNumber", "softwareRevision", "hardwareRevision", "firmwareRevision", "pnpId", "serialNumber", "deviceInformation"];
18
+ export declare const DeviceInformationTypes: readonly ["manufacturerName", "modelNumber", "hardwareRevision", "firmwareRevision", "softwareRevision", "pnpId", "serialNumber"];
19
+ export type DeviceInformationType = (typeof DeviceInformationTypes)[number];
20
+ export declare const DeviceInformationEventTypes: readonly ["manufacturerName", "modelNumber", "hardwareRevision", "firmwareRevision", "softwareRevision", "pnpId", "serialNumber", "deviceInformation"];
21
21
  export type DeviceInformationEventType = (typeof DeviceInformationEventTypes)[number];
22
22
  export interface DeviceInformationEventMessages {
23
23
  manufacturerName: {
@@ -51,6 +51,6 @@ declare class DeviceInformationManager {
51
51
  eventDispatcher: DeviceInformationEventDispatcher;
52
52
  get information(): DeviceInformation;
53
53
  clear(): void;
54
- parseMessage(messageType: DeviceInformationMessageType, dataView: DataView): void;
54
+ parseMessage(messageType: DeviceInformationType, dataView: DataView): void;
55
55
  }
56
56
  export default DeviceInformationManager;
@@ -5,6 +5,8 @@ import EventDispatcher, { BoundEventListeners, Event, EventListenerMap, EventMap
5
5
  export interface LocalStorageDeviceInformation {
6
6
  type: DeviceType;
7
7
  bluetoothId: string;
8
+ ipAddress?: string;
9
+ isWifiSecure?: boolean;
8
10
  }
9
11
  export interface LocalStorageConfiguration {
10
12
  devices: LocalStorageDeviceInformation[];
@@ -1,9 +1,9 @@
1
1
  import { FileLike } from "./utils/ArrayBufferUtils.ts";
2
2
  import Device, { SendMessageCallback } from "./Device.ts";
3
3
  import EventDispatcher from "./utils/EventDispatcher.ts";
4
- export declare const FileTransferMessageTypes: readonly ["maxFileLength", "getFileType", "setFileType", "getFileLength", "setFileLength", "getFileChecksum", "setFileChecksum", "setFileTransferCommand", "fileTransferStatus", "getFileBlock", "setFileBlock", "fileBytesTransferred"];
4
+ export declare const FileTransferMessageTypes: readonly ["getFileTypes", "maxFileLength", "getFileType", "setFileType", "getFileLength", "setFileLength", "getFileChecksum", "setFileChecksum", "setFileTransferCommand", "fileTransferStatus", "getFileBlock", "setFileBlock", "fileBytesTransferred"];
5
5
  export type FileTransferMessageType = (typeof FileTransferMessageTypes)[number];
6
- export declare const FileTypes: readonly ["tflite"];
6
+ export declare const FileTypes: readonly ["tflite", "wifiServerCert", "wifiServerKey"];
7
7
  export type FileType = (typeof FileTypes)[number];
8
8
  export declare const FileTransferStatuses: readonly ["idle", "sending", "receiving"];
9
9
  export type FileTransferStatus = (typeof FileTransferStatuses)[number];
@@ -11,9 +11,17 @@ export declare const FileTransferCommands: readonly ["startSend", "startReceive"
11
11
  export type FileTransferCommand = (typeof FileTransferCommands)[number];
12
12
  export declare const FileTransferDirections: readonly ["sending", "receiving"];
13
13
  export type FileTransferDirection = (typeof FileTransferDirections)[number];
14
- export declare const FileTransferEventTypes: readonly ["maxFileLength", "getFileType", "setFileType", "getFileLength", "setFileLength", "getFileChecksum", "setFileChecksum", "setFileTransferCommand", "fileTransferStatus", "getFileBlock", "setFileBlock", "fileBytesTransferred", "fileTransferProgress", "fileTransferComplete", "fileReceived"];
14
+ export declare const FileTransferEventTypes: readonly ["getFileTypes", "maxFileLength", "getFileType", "setFileType", "getFileLength", "setFileLength", "getFileChecksum", "setFileChecksum", "setFileTransferCommand", "fileTransferStatus", "getFileBlock", "setFileBlock", "fileBytesTransferred", "fileTransferProgress", "fileTransferComplete", "fileReceived"];
15
15
  export type FileTransferEventType = (typeof FileTransferEventTypes)[number];
16
+ export declare const RequiredFileTransferMessageTypes: FileTransferMessageType[];
17
+ export interface FileConfiguration {
18
+ file: FileLike;
19
+ type: FileType;
20
+ }
16
21
  export interface FileTransferEventMessages {
22
+ getFileTypes: {
23
+ fileTypes: FileType[];
24
+ };
17
25
  maxFileLength: {
18
26
  maxFileLength: number;
19
27
  };
@@ -49,36 +57,38 @@ declare class FileTransferManager {
49
57
  constructor();
50
58
  sendMessage: SendFileTransferMessageCallback;
51
59
  eventDispatcher: FileTransferEventDispatcher;
52
- get addEventListener(): <T extends "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived">(type: T, listener: (event: {
60
+ get addEventListener(): <T extends "getFileTypes" | "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived">(type: T, listener: (event: {
53
61
  type: T;
54
62
  target: Device;
55
63
  message: FileTransferEventMessages[T];
56
64
  }) => void, options?: {
57
65
  once?: boolean;
58
66
  }) => void;
59
- get removeEventListener(): <T extends "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived">(type: T, listener: (event: {
67
+ get removeEventListener(): <T extends "getFileTypes" | "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived">(type: T, listener: (event: {
60
68
  type: T;
61
69
  target: Device;
62
70
  message: FileTransferEventMessages[T];
63
71
  }) => void) => void;
64
- get waitForEvent(): <T extends "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived">(type: T) => Promise<{
72
+ get waitForEvent(): <T extends "getFileTypes" | "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived">(type: T) => Promise<{
65
73
  type: T;
66
74
  target: Device;
67
75
  message: FileTransferEventMessages[T];
68
76
  }>;
77
+ get fileTypes(): ("tflite" | "wifiServerCert" | "wifiServerKey")[];
69
78
  static get MaxLength(): number;
70
79
  /** kB */
71
80
  get maxLength(): number;
72
- get type(): "tflite" | undefined;
81
+ get type(): "tflite" | "wifiServerCert" | "wifiServerKey" | undefined;
73
82
  get length(): number;
74
83
  get checksum(): number;
75
84
  get status(): "idle" | "sending" | "receiving";
76
85
  parseMessage(messageType: FileTransferMessageType, dataView: DataView): void;
77
- send(type: FileType, file: FileLike): Promise<void>;
86
+ send(type: FileType, file: FileLike): Promise<boolean>;
78
87
  mtu: number;
79
88
  receive(type: FileType): Promise<void>;
80
89
  cancel(): Promise<void>;
81
90
  get isServerSide(): boolean;
82
91
  set isServerSide(newIsServerSide: boolean);
92
+ requestRequiredInformation(): void;
83
93
  }
84
94
  export default FileTransferManager;
@@ -1,3 +1,4 @@
1
+ import { ConnectionType } from "./connection/BaseConnectionManager.ts";
1
2
  import Device, { SendMessageCallback } from "./Device.ts";
2
3
  import EventDispatcher from "./utils/EventDispatcher.ts";
3
4
  export declare const DeviceTypes: readonly ["leftInsole", "rightInsole", "leftGlove", "rightGlove", "glasses", "generic"];
@@ -63,5 +64,6 @@ declare class InformationManager {
63
64
  get isCurrentTimeSet(): boolean;
64
65
  parseMessage(messageType: InformationMessageType, dataView: DataView): void;
65
66
  clear(): void;
67
+ connectionType?: ConnectionType;
66
68
  }
67
69
  export default InformationManager;
@@ -0,0 +1,88 @@
1
+ import Device, { SendMessageCallback } from "./Device.ts";
2
+ import EventDispatcher from "./utils/EventDispatcher.ts";
3
+ export declare const MicrophoneSensorTypes: readonly ["microphone"];
4
+ export type MicrophoneSensorType = (typeof MicrophoneSensorTypes)[number];
5
+ export declare const MicrophoneCommands: readonly ["start", "stop", "vad"];
6
+ export type MicrophoneCommand = (typeof MicrophoneCommands)[number];
7
+ export declare const MicrophoneStatuses: readonly ["idle", "streaming", "vad"];
8
+ export type MicrophoneStatus = (typeof MicrophoneStatuses)[number];
9
+ export declare const MicrophoneConfigurationTypes: readonly ["sampleRate", "bitDepth"];
10
+ export type MicrophoneConfigurationType = (typeof MicrophoneConfigurationTypes)[number];
11
+ export declare const MicrophoneSampleRates: readonly ["8000", "16000"];
12
+ export type MicrophoneSampleRate = (typeof MicrophoneSampleRates)[number];
13
+ export declare const MicrophoneBitDepths: readonly ["8", "16"];
14
+ export type MicrophoneBitDepth = (typeof MicrophoneBitDepths)[number];
15
+ export declare const MicrophoneMessageTypes: readonly ["microphoneStatus", "microphoneCommand", "getMicrophoneConfiguration", "setMicrophoneConfiguration", "microphoneData"];
16
+ export type MicrophoneMessageType = (typeof MicrophoneMessageTypes)[number];
17
+ export type MicrophoneConfiguration = {
18
+ sampleRate?: MicrophoneSampleRate;
19
+ bitDepth?: MicrophoneBitDepth;
20
+ };
21
+ export declare const MicrophoneConfigurationValues: {
22
+ sampleRate: readonly ["8000", "16000"];
23
+ bitDepth: readonly ["8", "16"];
24
+ };
25
+ export declare const RequiredMicrophoneMessageTypes: MicrophoneMessageType[];
26
+ export declare const MicrophoneEventTypes: readonly ["microphoneStatus", "microphoneCommand", "getMicrophoneConfiguration", "setMicrophoneConfiguration", "microphoneData", "isRecordingMicrophone", "microphoneRecording"];
27
+ export type MicrophoneEventType = (typeof MicrophoneEventTypes)[number];
28
+ export interface MicrophoneEventMessages {
29
+ microphoneStatus: {
30
+ microphoneStatus: MicrophoneStatus;
31
+ previousMicrophoneStatus: MicrophoneStatus;
32
+ };
33
+ getMicrophoneConfiguration: {
34
+ microphoneConfiguration: MicrophoneConfiguration;
35
+ };
36
+ microphoneData: {
37
+ samples: Float32Array;
38
+ sampleRate: MicrophoneSampleRate;
39
+ bitDepth: MicrophoneBitDepth;
40
+ };
41
+ isRecordingMicrophone: {
42
+ isRecordingMicrophone: boolean;
43
+ };
44
+ microphoneRecording: {
45
+ samples: Float32Array;
46
+ sampleRate: MicrophoneSampleRate;
47
+ bitDepth: MicrophoneBitDepth;
48
+ blob: Blob;
49
+ url: string;
50
+ };
51
+ }
52
+ export type MicrophoneEventDispatcher = EventDispatcher<Device, MicrophoneEventType, MicrophoneEventMessages>;
53
+ export type SendMicrophoneMessageCallback = SendMessageCallback<MicrophoneMessageType>;
54
+ declare class MicrophoneManager {
55
+ #private;
56
+ constructor();
57
+ sendMessage: SendMicrophoneMessageCallback;
58
+ eventDispatcher: MicrophoneEventDispatcher;
59
+ get waitForEvent(): <T extends "microphoneStatus" | "microphoneCommand" | "getMicrophoneConfiguration" | "setMicrophoneConfiguration" | "microphoneData" | "isRecordingMicrophone" | "microphoneRecording">(type: T) => Promise<{
60
+ type: T;
61
+ target: Device;
62
+ message: MicrophoneEventMessages[T];
63
+ }>;
64
+ requestRequiredInformation(): void;
65
+ get microphoneStatus(): "idle" | "vad" | "streaming";
66
+ start(): Promise<void>;
67
+ stop(): Promise<void>;
68
+ vad(): Promise<void>;
69
+ toggle(): Promise<void>;
70
+ get microphoneConfiguration(): MicrophoneConfiguration;
71
+ get availableMicrophoneConfigurationTypes(): ("sampleRate" | "bitDepth")[];
72
+ get bitDepth(): "8" | "16" | undefined;
73
+ get sampleRate(): "8000" | "16000" | undefined;
74
+ setMicrophoneConfiguration(newMicrophoneConfiguration: MicrophoneConfiguration): Promise<void>;
75
+ static AssertValidMicrophoneConfigurationType(microphoneConfigurationType: MicrophoneConfigurationType): void;
76
+ static AssertValidMicrophoneConfigurationTypeEnum(microphoneConfigurationTypeEnum: number): void;
77
+ parseMessage(messageType: MicrophoneMessageType, dataView: DataView): void;
78
+ get audioContext(): AudioContext | undefined;
79
+ set audioContext(newAudioContext: AudioContext | undefined);
80
+ get gainNode(): GainNode;
81
+ get mediaStreamDestination(): MediaStreamAudioDestinationNode;
82
+ get isRecording(): boolean;
83
+ startRecording(): void;
84
+ stopRecording(): void;
85
+ toggleRecording(): void;
86
+ clear(): void;
87
+ }
88
+ export default MicrophoneManager;
@@ -1,10 +1,12 @@
1
1
  import EventDispatcher from "./utils/EventDispatcher.ts";
2
2
  import { SensorType } from "./sensor/SensorDataManager.ts";
3
3
  import Device, { SendMessageCallback } from "./Device.ts";
4
+ import { FileConfiguration as BaseFileConfiguration } from "./FileTransferManager.ts";
4
5
  export declare const TfliteMessageTypes: readonly ["getTfliteName", "setTfliteName", "getTfliteTask", "setTfliteTask", "getTfliteSampleRate", "setTfliteSampleRate", "getTfliteSensorTypes", "setTfliteSensorTypes", "tfliteIsReady", "getTfliteCaptureDelay", "setTfliteCaptureDelay", "getTfliteThreshold", "setTfliteThreshold", "getTfliteInferencingEnabled", "setTfliteInferencingEnabled", "tfliteInference"];
5
6
  export type TfliteMessageType = (typeof TfliteMessageTypes)[number];
6
7
  export declare const TfliteEventTypes: readonly ["getTfliteName", "setTfliteName", "getTfliteTask", "setTfliteTask", "getTfliteSampleRate", "setTfliteSampleRate", "getTfliteSensorTypes", "setTfliteSensorTypes", "tfliteIsReady", "getTfliteCaptureDelay", "setTfliteCaptureDelay", "getTfliteThreshold", "setTfliteThreshold", "getTfliteInferencingEnabled", "setTfliteInferencingEnabled", "tfliteInference"];
7
8
  export type TfliteEventType = (typeof TfliteEventTypes)[number];
9
+ export declare const RequiredTfliteMessageTypes: TfliteMessageType[];
8
10
  export declare const TfliteTasks: readonly ["classification", "regression"];
9
11
  export type TfliteTask = (typeof TfliteTasks)[number];
10
12
  export interface TfliteEventMessages {
@@ -41,11 +43,25 @@ export interface TfliteInference {
41
43
  values: number[];
42
44
  maxValue?: number;
43
45
  maxIndex?: number;
46
+ maxClass?: string;
47
+ classValues?: {
48
+ [key: string]: number;
49
+ };
44
50
  }
45
51
  export type TfliteEventDispatcher = EventDispatcher<Device, TfliteEventType, TfliteEventMessages>;
46
52
  export type SendTfliteMessageCallback = SendMessageCallback<TfliteMessageType>;
47
- export declare const TfliteSensorTypes: SensorType[];
53
+ export declare const TfliteSensorTypes: readonly ["pressure", "linearAcceleration", "gyroscope", "magnetometer"];
48
54
  export type TfliteSensorType = (typeof TfliteSensorTypes)[number];
55
+ export interface TfliteFileConfiguration extends BaseFileConfiguration {
56
+ type: "tflite";
57
+ name: string;
58
+ sensorTypes: TfliteSensorType[];
59
+ task: TfliteTask;
60
+ sampleRate: number;
61
+ captureDelay?: number;
62
+ threshold?: number;
63
+ classes?: string[];
64
+ }
49
65
  declare class TfliteManager {
50
66
  #private;
51
67
  constructor();
@@ -75,7 +91,7 @@ declare class TfliteManager {
75
91
  get sampleRate(): number;
76
92
  setSampleRate(newSampleRate: number, sendImmediately?: boolean): Promise<void>;
77
93
  static AssertValidSensorType(sensorType: SensorType): void;
78
- get sensorTypes(): ("pressure" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "barometer")[];
94
+ get sensorTypes(): ("pressure" | "linearAcceleration" | "gyroscope" | "magnetometer")[];
79
95
  setSensorTypes(newSensorTypes: SensorType[], sendImmediately?: boolean): Promise<void>;
80
96
  get isReady(): boolean;
81
97
  get captureDelay(): number;
@@ -88,5 +104,9 @@ declare class TfliteManager {
88
104
  enableInferencing(): Promise<void>;
89
105
  disableInferencing(): Promise<void>;
90
106
  parseMessage(messageType: TfliteMessageType, dataView: DataView): void;
107
+ get configuration(): TfliteFileConfiguration | undefined;
108
+ sendConfiguration(configuration: TfliteFileConfiguration, sendImmediately?: boolean): void;
109
+ clear(): void;
110
+ requestRequiredInformation(): void;
91
111
  }
92
112
  export default TfliteManager;