brilliantsole 0.0.26 → 0.0.28

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 (215) hide show
  1. package/README.md +16 -10
  2. package/assets/3d/anchor.glb +0 -0
  3. package/assets/3d/coin.glb +0 -0
  4. package/assets/3d/glasses.glb +0 -0
  5. package/assets/3d/rightHand.glb +0 -0
  6. package/assets/audio/bounceMedium.wav +0 -0
  7. package/assets/audio/bounceStrong.wav +0 -0
  8. package/assets/audio/bounceWeak.wav +0 -0
  9. package/assets/audio/coin.wav +0 -0
  10. package/assets/audio/getUp.wav +0 -0
  11. package/assets/audio/grab.wav +0 -0
  12. package/assets/audio/kick.wav +0 -0
  13. package/assets/audio/platterFadeIn old.wav +0 -0
  14. package/assets/audio/platterFadeIn.wav +0 -0
  15. package/assets/audio/platterFadeOut.wav +0 -0
  16. package/assets/audio/punch.wav +0 -0
  17. package/assets/audio/punchSqueak.wav +0 -0
  18. package/assets/audio/purr.wav +0 -0
  19. package/assets/audio/purrFadeOut.wav +0 -0
  20. package/assets/audio/release.wav +0 -0
  21. package/assets/audio/splat.wav +0 -0
  22. package/assets/audio/stomp.wav +0 -0
  23. package/assets/images/ukaton-pressure-0.svg +9 -0
  24. package/assets/images/ukaton-pressure-1.svg +9 -0
  25. package/assets/images/ukaton-pressure-10.svg +9 -0
  26. package/assets/images/ukaton-pressure-11.svg +9 -0
  27. package/assets/images/ukaton-pressure-12.svg +9 -0
  28. package/assets/images/ukaton-pressure-13.svg +9 -0
  29. package/assets/images/ukaton-pressure-14.svg +9 -0
  30. package/assets/images/ukaton-pressure-15.svg +9 -0
  31. package/assets/images/ukaton-pressure-2.svg +9 -0
  32. package/assets/images/ukaton-pressure-3.svg +9 -0
  33. package/assets/images/ukaton-pressure-4.svg +9 -0
  34. package/assets/images/ukaton-pressure-5.svg +9 -0
  35. package/assets/images/ukaton-pressure-6.svg +9 -0
  36. package/assets/images/ukaton-pressure-7.svg +9 -0
  37. package/assets/images/ukaton-pressure-8.svg +9 -0
  38. package/assets/images/ukaton-pressure-9.svg +9 -0
  39. package/assets/images/ukaton-right-insole.svg +798 -0
  40. package/build/brilliantsole.cjs +2870 -882
  41. package/build/brilliantsole.cjs.map +1 -1
  42. package/build/brilliantsole.js +2477 -782
  43. package/build/brilliantsole.js.map +1 -1
  44. package/build/brilliantsole.ls.js +2260 -592
  45. package/build/brilliantsole.ls.js.map +1 -1
  46. package/build/brilliantsole.min.js +1 -1
  47. package/build/brilliantsole.min.js.map +1 -1
  48. package/build/brilliantsole.module.d.ts +302 -116
  49. package/build/brilliantsole.module.js +2468 -782
  50. package/build/brilliantsole.module.js.map +1 -1
  51. package/build/brilliantsole.module.min.d.ts +302 -116
  52. package/build/brilliantsole.module.min.js +1 -1
  53. package/build/brilliantsole.module.min.js.map +1 -1
  54. package/build/brilliantsole.node.module.d.ts +295 -113
  55. package/build/brilliantsole.node.module.js +2860 -882
  56. package/build/brilliantsole.node.module.js.map +1 -1
  57. package/build/dts/BS-output.d.ts +10 -0
  58. package/build/dts/BS.d.ts +21 -9
  59. package/build/dts/CameraManager.d.ts +72 -0
  60. package/build/dts/Device.d.ts +53 -16
  61. package/build/dts/DeviceInformationManager.d.ts +4 -4
  62. package/build/dts/DeviceManager.d.ts +3 -0
  63. package/build/dts/FileTransferManager.d.ts +18 -8
  64. package/build/dts/InformationManager.d.ts +8 -5
  65. package/build/dts/TfliteManager.d.ts +22 -2
  66. package/build/dts/WifiManager.d.ts +61 -0
  67. package/build/dts/connection/BaseConnectionManager.d.ts +37 -3
  68. package/build/dts/connection/ClientConnectionManager.d.ts +11 -2
  69. package/build/dts/connection/bluetooth/BluetoothConnectionManager.d.ts +1 -0
  70. package/build/dts/connection/bluetooth/NobleConnectionManager.d.ts +3 -1
  71. package/build/dts/connection/bluetooth/WebBluetoothConnectionManager.d.ts +2 -0
  72. package/build/dts/connection/bluetooth/bluetoothUUIDs.d.ts +2 -2
  73. package/build/dts/connection/udp/UDPConnectionManager.d.ts +28 -0
  74. package/build/dts/connection/webSocket/WebSocketConnectionManager.d.ts +25 -0
  75. package/build/dts/devicePair/DevicePair.d.ts +14 -10
  76. package/build/dts/devicePair/DevicePairPressureSensorDataManager.d.ts +8 -4
  77. package/build/dts/devicePair/DevicePairSensorDataManager.d.ts +2 -2
  78. package/build/dts/scanner/BaseScanner.d.ts +4 -1
  79. package/build/dts/scanner/NobleScanner.d.ts +2 -1
  80. package/build/dts/sensor/MotionSensorDataManager.d.ts +5 -2
  81. package/build/dts/sensor/SensorDataManager.d.ts +5 -4
  82. package/build/dts/server/BaseClient.d.ts +6 -3
  83. package/build/dts/server/ServerUtils.d.ts +1 -1
  84. package/build/dts/server/websocket/WebSocketUtils.d.ts +1 -1
  85. package/build/dts/utils/CenterOfPressureHelper.d.ts +2 -2
  86. package/build/dts/utils/Console.d.ts +2 -0
  87. package/build/dts/utils/MathUtils.d.ts +2 -0
  88. package/build/dts/utils/ThrottleUtils.d.ts +2 -0
  89. package/build/dts/vibration/VibrationManager.d.ts +19 -2
  90. package/build/index.d.ts +299 -113
  91. package/build/index.node.d.ts +292 -110
  92. package/examples/3d/scene.html +19 -5
  93. package/examples/3d/script.js +90 -17
  94. package/examples/3d-generic/index.html +144 -0
  95. package/examples/3d-generic/script.js +266 -0
  96. package/examples/balance/script.js +2 -1
  97. package/examples/basic/index.html +232 -18
  98. package/examples/basic/script.js +746 -106
  99. package/examples/bottango/index.html +11 -1
  100. package/examples/bottango/script.js +2 -2
  101. package/examples/center-of-pressure/index.html +114 -114
  102. package/examples/center-of-pressure/script.js +1 -1
  103. package/examples/device-pair/index.html +58 -58
  104. package/examples/device-pair/script.js +12 -8
  105. package/examples/edge-impulse/script.js +135 -44
  106. package/examples/edge-impulse-test/README.md +11 -0
  107. package/examples/edge-impulse-test/edge-impulse-standalone.js +7228 -0
  108. package/examples/edge-impulse-test/edge-impulse-standalone.wasm +0 -0
  109. package/examples/edge-impulse-test/index.html +75 -0
  110. package/examples/edge-impulse-test/run-impulse.js +135 -0
  111. package/examples/edge-impulse-test/script.js +200 -0
  112. package/examples/gloves/edge-impulse-standalone.js +7228 -0
  113. package/examples/gloves/edge-impulse-standalone.wasm +0 -0
  114. package/examples/gloves/index.html +119 -0
  115. package/examples/gloves/run-impulse.js +135 -0
  116. package/examples/gloves/scene.html +124 -0
  117. package/examples/gloves/script.js +931 -0
  118. package/examples/graph/index.html +11 -1
  119. package/examples/graph/script.js +94 -37
  120. package/examples/pressure/index.html +180 -12
  121. package/examples/pressure/script.js +144 -7
  122. package/examples/punch/index.html +135 -0
  123. package/examples/punch/punch.tflite +0 -0
  124. package/examples/punch/script.js +169 -0
  125. package/examples/recording/index.html +191 -183
  126. package/examples/server/index.html +109 -23
  127. package/examples/server/script.js +322 -111
  128. package/examples/ukaton-firmware-update/index.html +20 -0
  129. package/examples/ukaton-firmware-update/manifest.json +11 -0
  130. package/examples/ukaton-firmware-update/merged-firmware.bin +0 -0
  131. package/examples/utils/aframe/aframe-master.min.js +2 -0
  132. package/examples/utils/aframe/bs-vibration.js +150 -0
  133. package/examples/utils/aframe/force-pushable.js +80 -0
  134. package/examples/utils/aframe/grabbable-anchor.js +46 -0
  135. package/examples/utils/aframe/grabbable-listener.js +31 -0
  136. package/examples/utils/aframe/grabbable-physics-body.js +190 -0
  137. package/examples/utils/aframe/grow-shrink.js +25 -0
  138. package/examples/utils/aframe/hand-punch.js +119 -0
  139. package/examples/utils/aframe/my-obb-collider.js +293 -0
  140. package/examples/utils/aframe/occlude-hand-tracking-controls.js +47 -0
  141. package/examples/utils/aframe/occlude-mesh.js +42 -0
  142. package/examples/utils/aframe/palm-up-detector.js +47 -0
  143. package/examples/utils/aframe/shadow-material.js +20 -0
  144. package/examples/utils/aframe/soft-shadow-light.js +9 -0
  145. package/examples/webxr/script.js +3 -3
  146. package/examples/webxr-2/assets/3d/soccerBall.glb +0 -0
  147. package/examples/webxr-2/assets/audio/shellBounce.wav +0 -0
  148. package/examples/webxr-2/assets/audio/shellHit.wav +0 -0
  149. package/examples/webxr-2/assets/audio/shellKick.wav +0 -0
  150. package/examples/webxr-2/assets/audio/soccerBounce.wav +0 -0
  151. package/examples/webxr-2/assets/audio/soccerKick.mp3 +0 -0
  152. package/examples/webxr-2/assets/images/shellTexture.png +0 -0
  153. package/examples/webxr-2/components/bs-ankle.js +337 -0
  154. package/examples/webxr-2/components/coin.js +84 -0
  155. package/examples/webxr-2/components/custom-wrap.js +17 -0
  156. package/examples/webxr-2/components/goomba.js +3250 -0
  157. package/examples/webxr-2/components/init-shell-material.js +215 -0
  158. package/examples/webxr-2/components/platter.js +172 -0
  159. package/examples/webxr-2/components/shell.js +374 -0
  160. package/examples/webxr-2/components/soccer-ball.js +250 -0
  161. package/examples/webxr-2/components/squashed-goomba.js +249 -0
  162. package/examples/webxr-2/edge-impulse-standalone.js +7228 -0
  163. package/examples/webxr-2/edge-impulse-standalone.wasm +0 -0
  164. package/examples/webxr-2/index.html +996 -0
  165. package/examples/webxr-2/kick.tflite +0 -0
  166. package/examples/webxr-2/kick2.tflite +0 -0
  167. package/examples/webxr-2/run-impulse.js +135 -0
  168. package/examples/webxr-2/script.js +384 -0
  169. package/package.json +2 -1
  170. package/src/.prettierrc +4 -0
  171. package/src/BS.ts +66 -9
  172. package/src/CameraManager.ts +499 -0
  173. package/src/Device.ts +620 -92
  174. package/src/DeviceInformationManager.ts +22 -11
  175. package/src/DeviceManager.ts +94 -25
  176. package/src/FileTransferManager.ts +146 -21
  177. package/src/FirmwareManager.ts +1 -1
  178. package/src/InformationManager.ts +62 -20
  179. package/src/TfliteManager.ts +172 -26
  180. package/src/WifiManager.ts +323 -0
  181. package/src/connection/BaseConnectionManager.ts +145 -30
  182. package/src/connection/ClientConnectionManager.ts +47 -11
  183. package/src/connection/bluetooth/BluetoothConnectionManager.ts +14 -3
  184. package/src/connection/bluetooth/NobleConnectionManager.ts +155 -42
  185. package/src/connection/bluetooth/WebBluetoothConnectionManager.ts +104 -35
  186. package/src/connection/bluetooth/bluetoothUUIDs.ts +40 -13
  187. package/src/connection/udp/UDPConnectionManager.ts +356 -0
  188. package/src/connection/websocket/WebSocketConnectionManager.ts +282 -0
  189. package/src/devicePair/DevicePair.ts +145 -49
  190. package/src/devicePair/DevicePairPressureSensorDataManager.ts +72 -24
  191. package/src/devicePair/DevicePairSensorDataManager.ts +5 -5
  192. package/src/scanner/BaseScanner.ts +49 -11
  193. package/src/scanner/NobleScanner.ts +81 -17
  194. package/src/sensor/BarometerSensorDataManager.ts +1 -1
  195. package/src/sensor/MotionSensorDataManager.ts +22 -7
  196. package/src/sensor/PressureSensorDataManager.ts +47 -13
  197. package/src/sensor/SensorConfigurationManager.ts +75 -24
  198. package/src/sensor/SensorDataManager.ts +107 -26
  199. package/src/server/BaseClient.ts +192 -37
  200. package/src/server/BaseServer.ts +201 -43
  201. package/src/server/ServerUtils.ts +39 -9
  202. package/src/server/udp/UDPServer.ts +74 -23
  203. package/src/server/udp/UDPUtils.ts +9 -2
  204. package/src/server/websocket/WebSocketClient.ts +30 -9
  205. package/src/server/websocket/WebSocketServer.ts +1 -1
  206. package/src/server/websocket/WebSocketUtils.ts +4 -2
  207. package/src/utils/CenterOfPressureHelper.ts +5 -5
  208. package/src/utils/Console.ts +62 -9
  209. package/src/utils/MathUtils.ts +31 -1
  210. package/src/utils/ParseUtils.ts +25 -6
  211. package/src/utils/ThrottleUtils.ts +62 -0
  212. package/src/utils/Timer.ts +1 -1
  213. package/src/utils/checksum.ts +1 -1
  214. package/src/utils/mcumgr.js +1 -1
  215. 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,31 @@
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, InsoleSides, InsoleSide, } 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";
16
- export { default as DevicePair, DevicePairEvent, DevicePairEventMap, DevicePairEventListenerMap, BoundDevicePairEventListeners, } from "./devicePair/DevicePair.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 { default as DevicePair, DevicePairEvent, DevicePairEventMap, DevicePairEventListenerMap, BoundDevicePairEventListeners, DevicePairType, DevicePairTypes, } from "./devicePair/DevicePair.ts";
19
+ import { addEventListeners, removeEventListeners } from "./utils/EventUtils.ts";
20
+ export declare const EventUtils: {
21
+ addEventListeners: typeof addEventListeners;
22
+ removeEventListeners: typeof removeEventListeners;
23
+ };
24
+ import { throttle, debounce } from "./utils/ThrottleUtils.ts";
25
+ export declare const ThrottleUtils: {
26
+ throttle: typeof throttle;
27
+ debounce: typeof debounce;
28
+ };
17
29
  export { DiscoveredDevice } from "./scanner/BaseScanner.ts";
18
30
  /** NODE_START */
19
31
  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,19 @@
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 { WifiEventMessages } from "./WifiManager.ts";
14
+ 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", "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", "smp", "firmwareImages", "firmwareUploadProgress", "firmwareStatus", "firmwareUploadComplete"];
13
15
  export type DeviceEventType = (typeof DeviceEventTypes)[number];
14
- export interface DeviceEventMessages extends ConnectionStatusEventMessages, DeviceInformationEventMessages, InformationEventMessages, SensorDataEventMessages, SensorConfigurationEventMessages, TfliteEventMessages, FileTransferEventMessages, FirmwareEventMessages {
16
+ export interface DeviceEventMessages extends ConnectionStatusEventMessages, DeviceInformationEventMessages, InformationEventMessages, SensorDataEventMessages, SensorConfigurationEventMessages, TfliteEventMessages, FileTransferEventMessages, WifiEventMessages, CameraEventMessages, FirmwareEventMessages {
15
17
  batteryLevel: {
16
18
  batteryLevel: number;
17
19
  };
@@ -34,30 +36,31 @@ export declare const RequiredInformationConnectionMessages: TxRxMessageType[];
34
36
  declare class Device {
35
37
  #private;
36
38
  get bluetoothId(): string | undefined;
39
+ get isAvailable(): boolean | undefined;
37
40
  constructor();
38
- get addEventListener(): <T extends "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived" | "pressure" | "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: {
41
+ 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" | "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: {
39
42
  type: T;
40
43
  target: Device;
41
44
  message: DeviceEventMessages[T];
42
45
  }) => void, options?: {
43
46
  once?: boolean;
44
47
  }) => void;
45
- get removeEventListener(): <T extends "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived" | "pressure" | "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: {
48
+ 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" | "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: {
46
49
  type: T;
47
50
  target: Device;
48
51
  message: DeviceEventMessages[T];
49
52
  }) => void) => void;
50
- get waitForEvent(): <T extends "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived" | "pressure" | "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<{
53
+ 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" | "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<{
51
54
  type: T;
52
55
  target: Device;
53
56
  message: DeviceEventMessages[T];
54
57
  }>;
55
- get removeEventListeners(): <T extends "maxFileLength" | "getFileType" | "setFileType" | "getFileLength" | "setFileLength" | "getFileChecksum" | "setFileChecksum" | "setFileTransferCommand" | "fileTransferStatus" | "getFileBlock" | "setFileBlock" | "fileBytesTransferred" | "fileTransferProgress" | "fileTransferComplete" | "fileReceived" | "pressure" | "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;
58
+ 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" | "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;
56
59
  get removeAllEventListeners(): () => void;
57
60
  get connectionManager(): BaseConnectionManager | undefined;
58
61
  set connectionManager(newConnectionManager: BaseConnectionManager | undefined);
59
62
  private sendTxMessages;
60
- connect(): Promise<void>;
63
+ connect(options?: ConnectOptions): Promise<void>;
61
64
  get isConnected(): boolean;
62
65
  get canReconnect(): boolean | undefined;
63
66
  reconnect(): Promise<void | undefined>;
@@ -66,12 +69,12 @@ declare class Device {
66
69
  static set ReconnectOnDisconnection(newReconnectOnDisconnection: boolean);
67
70
  get reconnectOnDisconnection(): boolean;
68
71
  set reconnectOnDisconnection(newReconnectOnDisconnection: boolean);
69
- get connectionType(): "webBluetooth" | "noble" | "client" | undefined;
72
+ get connectionType(): "webBluetooth" | "noble" | "client" | "webSocket" | "udp" | undefined;
70
73
  disconnect(): Promise<void>;
71
74
  toggleConnection(): void;
72
75
  get connectionStatus(): ConnectionStatus;
73
76
  get isConnectionBusy(): boolean;
74
- latestConnectionMessage: Map<ConnectionMessageType, DataView>;
77
+ latestConnectionMessages: Map<ConnectionMessageType, DataView>;
75
78
  get deviceInformation(): import("./DeviceInformationManager.ts").DeviceInformation;
76
79
  get batteryLevel(): number;
77
80
  /** @private */
@@ -82,13 +85,14 @@ declare class Device {
82
85
  get getBatteryCurrent(): () => Promise<void>;
83
86
  get name(): string;
84
87
  get setName(): (newName: string) => Promise<void>;
85
- get type(): "leftInsole" | "rightInsole";
88
+ get type(): "leftInsole" | "rightInsole" | "leftGlove" | "rightGlove" | "glasses" | "generic";
86
89
  get setType(): (newType: DeviceType) => Promise<void>;
87
90
  get isInsole(): boolean;
88
- get insoleSide(): "left" | "right";
91
+ get isGlove(): boolean;
92
+ get side(): "left" | "right";
89
93
  get mtu(): number;
90
94
  get sensorTypes(): SensorType[];
91
- get continuousSensorTypes(): ("pressure" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "barometer")[];
95
+ get continuousSensorTypes(): ("pressure" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "barometer")[];
92
96
  get sensorConfiguration(): SensorConfiguration;
93
97
  setSensorConfiguration(newSensorConfiguration: SensorConfiguration, clearRest?: boolean): Promise<void>;
94
98
  clearSensorConfiguration(): Promise<void>;
@@ -98,20 +102,24 @@ declare class Device {
98
102
  set clearSensorConfigurationOnLeave(newClearSensorConfigurationOnLeave: boolean);
99
103
  get numberOfPressureSensors(): number;
100
104
  resetPressureRange(): void;
105
+ get vibrationLocations(): ("front" | "rear")[];
101
106
  triggerVibration(vibrationConfigurations: VibrationConfiguration[], sendImmediately?: boolean): Promise<void>;
107
+ get fileTypes(): ("tflite" | "wifiServerCert" | "wifiServerKey")[];
102
108
  get maxFileLength(): number;
109
+ get validFileTypes(): ("tflite" | "wifiServerCert" | "wifiServerKey")[];
103
110
  sendFile(fileType: FileType, file: FileLike): Promise<void>;
104
111
  receiveFile(fileType: FileType): Promise<void>;
105
112
  get fileTransferStatus(): "idle" | "sending" | "receiving";
106
113
  cancelFileTransfer(): void;
107
114
  get tfliteName(): string;
108
115
  get setTfliteName(): (newName: string, sendImmediately?: boolean) => Promise<void>;
116
+ sendTfliteConfiguration(configuration: TfliteFileConfiguration): Promise<void>;
109
117
  get tfliteTask(): "classification" | "regression";
110
118
  get setTfliteTask(): (newTask: import("./TfliteManager.ts").TfliteTask, sendImmediately?: boolean) => Promise<void>;
111
119
  get tfliteSampleRate(): number;
112
120
  get setTfliteSampleRate(): (newSampleRate: number, sendImmediately?: boolean) => Promise<void>;
113
- get tfliteSensorTypes(): ("pressure" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "barometer")[];
114
- get allowedTfliteSensorTypes(): ("pressure" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "barometer")[];
121
+ get tfliteSensorTypes(): ("pressure" | "linearAcceleration" | "gyroscope" | "magnetometer")[];
122
+ get allowedTfliteSensorTypes(): ("pressure" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "tapDetector" | "barometer" | "camera")[];
115
123
  get setTfliteSensorTypes(): (newSensorTypes: SensorType[], sendImmediately?: boolean) => Promise<void>;
116
124
  get tfliteIsReady(): boolean;
117
125
  get tfliteInferencingEnabled(): boolean;
@@ -123,8 +131,10 @@ declare class Device {
123
131
  get setTfliteCaptureDelay(): (newCaptureDelay: number, sendImmediately: boolean) => Promise<void>;
124
132
  get tfliteThreshold(): number;
125
133
  get setTfliteThreshold(): (newThreshold: number, sendImmediately: boolean) => Promise<void>;
134
+ get canUpdateFirmware(): boolean | undefined;
126
135
  private sendSmpMessage;
127
136
  get uploadFirmware(): (file: FileLike) => Promise<void>;
137
+ get canReset(): boolean | undefined;
128
138
  reset(): Promise<void>;
129
139
  get firmwareStatus(): "idle" | "uploading" | "uploaded" | "pending" | "testing" | "erasing";
130
140
  get getFirmwareImages(): () => Promise<void>;
@@ -134,5 +144,32 @@ declare class Device {
134
144
  get testFirmwareImage(): (imageIndex?: number) => Promise<void>;
135
145
  get isServerSide(): boolean;
136
146
  set isServerSide(newIsServerSide: boolean);
147
+ get isUkaton(): boolean;
148
+ get isWifiAvailable(): boolean;
149
+ get wifiSSID(): string;
150
+ setWifiSSID(newWifiSSID: string): Promise<void>;
151
+ get wifiPassword(): string;
152
+ setWifiPassword(newWifiPassword: string): Promise<void>;
153
+ get isWifiConnected(): boolean;
154
+ get ipAddress(): string | undefined;
155
+ get wifiConnectionEnabled(): boolean;
156
+ get enableWifiConnection(): () => Promise<void>;
157
+ get setWifiConnectionEnabled(): (newWifiConnectionEnabled: boolean, sendImmediately?: boolean) => Promise<void>;
158
+ get disableWifiConnection(): () => Promise<void>;
159
+ get toggleWifiConnection(): () => Promise<void>;
160
+ get isWifiSecure(): boolean;
161
+ reconnectViaWebSockets(): Promise<void>;
162
+ reconnectViaUDP(): Promise<void>;
163
+ get hasCamera(): boolean;
164
+ get cameraStatus(): "idle" | "focusing" | "takingPicture" | "asleep";
165
+ takePicture(): Promise<void>;
166
+ focusCamera(): Promise<void>;
167
+ stopCamera(): Promise<void>;
168
+ wakeCamera(): Promise<void>;
169
+ sleepCamera(): Promise<void>;
170
+ get cameraConfiguration(): import("./CameraManager.ts").CameraConfiguration;
171
+ get availableCameraConfigurationTypes(): ("resolution" | "qualityFactor" | "shutter" | "gain" | "redGain" | "greenGain" | "blueGain")[];
172
+ get cameraConfigurationRanges(): import("./CameraManager.ts").CameraConfigurationRanges;
173
+ get setCameraConfiguration(): (newCameraConfiguration: import("./CameraManager.ts").CameraConfiguration) => Promise<void>;
137
174
  }
138
175
  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[];
@@ -64,6 +66,7 @@ declare class DeviceManager {
64
66
  }) => void) => void;
65
67
  get RemoveEventListeners(): <T extends "deviceConnected" | "deviceDisconnected" | "deviceIsConnected" | "availableDevices" | "connectedDevices">(type: T) => void;
66
68
  get RemoveAllEventListeners(): () => void;
69
+ _CheckDeviceAvailability(device: Device): void;
67
70
  }
68
71
  declare const _default: DeviceManager;
69
72
  export default _default;
@@ -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,9 +1,10 @@
1
+ import { ConnectionType } from "./connection/BaseConnectionManager.ts";
1
2
  import Device, { SendMessageCallback } from "./Device.ts";
2
3
  import EventDispatcher from "./utils/EventDispatcher.ts";
3
- export declare const DeviceTypes: readonly ["leftInsole", "rightInsole"];
4
+ export declare const DeviceTypes: readonly ["leftInsole", "rightInsole", "leftGlove", "rightGlove", "glasses", "generic"];
4
5
  export type DeviceType = (typeof DeviceTypes)[number];
5
- export declare const InsoleSides: readonly ["left", "right"];
6
- export type InsoleSide = (typeof InsoleSides)[number];
6
+ export declare const Sides: readonly ["left", "right"];
7
+ export type Side = (typeof Sides)[number];
7
8
  export declare const MinNameLength = 2;
8
9
  export declare const MaxNameLength = 30;
9
10
  export declare const InformationMessageTypes: readonly ["isCharging", "getBatteryCurrent", "getMtu", "getId", "getName", "setName", "getType", "setType", "getCurrentTime", "setCurrentTime"];
@@ -52,15 +53,17 @@ declare class InformationManager {
52
53
  get name(): string;
53
54
  updateName(updatedName: string): void;
54
55
  setName(newName: string): Promise<void>;
55
- get type(): "leftInsole" | "rightInsole";
56
+ get type(): "leftInsole" | "rightInsole" | "leftGlove" | "rightGlove" | "glasses" | "generic";
56
57
  get typeEnum(): number;
57
58
  updateType(updatedType: DeviceType): void;
58
59
  setType(newType: DeviceType): Promise<void>;
59
60
  get isInsole(): boolean;
60
- get insoleSide(): InsoleSide;
61
+ get isGlove(): boolean;
62
+ get side(): Side;
61
63
  get mtu(): number;
62
64
  get isCurrentTimeSet(): boolean;
63
65
  parseMessage(messageType: InformationMessageType, dataView: DataView): void;
64
66
  clear(): void;
67
+ connectionType?: ConnectionType;
65
68
  }
66
69
  export default InformationManager;
@@ -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;
@@ -0,0 +1,61 @@
1
+ import Device, { SendMessageCallback } from "./Device.ts";
2
+ import EventDispatcher from "./utils/EventDispatcher.ts";
3
+ export declare const MinWifiSSIDLength = 1;
4
+ export declare const MaxWifiSSIDLength = 32;
5
+ export declare const MinWifiPasswordLength = 8;
6
+ export declare const MaxWifiPasswordLength = 64;
7
+ export declare const WifiMessageTypes: readonly ["isWifiAvailable", "getWifiSSID", "setWifiSSID", "getWifiPassword", "setWifiPassword", "getWifiConnectionEnabled", "setWifiConnectionEnabled", "isWifiConnected", "ipAddress", "isWifiSecure"];
8
+ export type WifiMessageType = (typeof WifiMessageTypes)[number];
9
+ export declare const RequiredWifiMessageTypes: WifiMessageType[];
10
+ export declare const WifiEventTypes: readonly ["isWifiAvailable", "getWifiSSID", "setWifiSSID", "getWifiPassword", "setWifiPassword", "getWifiConnectionEnabled", "setWifiConnectionEnabled", "isWifiConnected", "ipAddress", "isWifiSecure"];
11
+ export type WifiEventType = (typeof WifiEventTypes)[number];
12
+ export interface WifiEventMessages {
13
+ isWifiAvailable: {
14
+ isWifiAvailable: boolean;
15
+ };
16
+ getWifiSSID: {
17
+ wifiSSID: string;
18
+ };
19
+ getWifiPassword: {
20
+ wifiPassword: string;
21
+ };
22
+ getEnableWifiConnection: {
23
+ wifiConnectionEnabled: boolean;
24
+ };
25
+ isWifiConnected: {
26
+ isWifiConnected: boolean;
27
+ };
28
+ ipAddress: {
29
+ ipAddress?: string;
30
+ };
31
+ }
32
+ export type WifiEventDispatcher = EventDispatcher<Device, WifiEventType, WifiEventMessages>;
33
+ export type SendWifiMessageCallback = SendMessageCallback<WifiMessageType>;
34
+ declare class WifiManager {
35
+ #private;
36
+ constructor();
37
+ sendMessage: SendWifiMessageCallback;
38
+ eventDispatcher: WifiEventDispatcher;
39
+ get waitForEvent(): <T extends "isWifiAvailable" | "getWifiSSID" | "setWifiSSID" | "getWifiPassword" | "setWifiPassword" | "getWifiConnectionEnabled" | "setWifiConnectionEnabled" | "isWifiConnected" | "ipAddress" | "isWifiSecure">(type: T) => Promise<{
40
+ type: T;
41
+ target: Device;
42
+ message: WifiEventMessages[T];
43
+ }>;
44
+ requestRequiredInformation(): void;
45
+ get isWifiAvailable(): boolean;
46
+ get wifiSSID(): string;
47
+ setWifiSSID(newWifiSSID: string): Promise<void>;
48
+ get wifiPassword(): string;
49
+ setWifiPassword(newWifiPassword: string): Promise<void>;
50
+ get wifiConnectionEnabled(): boolean;
51
+ setWifiConnectionEnabled(newWifiConnectionEnabled: boolean, sendImmediately?: boolean): Promise<void>;
52
+ toggleWifiConnection(): Promise<void>;
53
+ enableWifiConnection(): Promise<void>;
54
+ disableWifiConnection(): Promise<void>;
55
+ get isWifiConnected(): boolean;
56
+ get ipAddress(): string | undefined;
57
+ get isWifiSecure(): boolean;
58
+ parseMessage(messageType: WifiMessageType, dataView: DataView): void;
59
+ clear(): void;
60
+ }
61
+ export default WifiManager;