brilliantsole 0.0.28 → 0.0.30

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 (136) hide show
  1. package/build/brilliantsole.cjs +6078 -444
  2. package/build/brilliantsole.cjs.map +1 -1
  3. package/build/brilliantsole.js +21734 -3031
  4. package/build/brilliantsole.js.map +1 -1
  5. package/build/brilliantsole.ls.js +23228 -5817
  6. package/build/brilliantsole.ls.js.map +1 -1
  7. package/build/brilliantsole.min.js +1 -1
  8. package/build/brilliantsole.min.js.map +1 -1
  9. package/build/brilliantsole.module.d.ts +1216 -72
  10. package/build/brilliantsole.module.js +21697 -3032
  11. package/build/brilliantsole.module.js.map +1 -1
  12. package/build/brilliantsole.module.min.d.ts +1216 -72
  13. package/build/brilliantsole.module.min.js +1 -1
  14. package/build/brilliantsole.module.min.js.map +1 -1
  15. package/build/brilliantsole.node.module.d.ts +927 -68
  16. package/build/brilliantsole.node.module.js +6053 -445
  17. package/build/brilliantsole.node.module.js.map +1 -1
  18. package/build/dts/BS.d.ts +21 -1
  19. package/build/dts/Device.d.ts +152 -12
  20. package/build/dts/DeviceManager.d.ts +3 -3
  21. package/build/dts/DisplayManager.d.ts +320 -0
  22. package/build/dts/FileTransferManager.d.ts +10 -4
  23. package/build/dts/MicrophoneManager.d.ts +88 -0
  24. package/build/dts/connection/BaseConnectionManager.d.ts +2 -2
  25. package/build/dts/connection/bluetooth/BluetoothUUID.d.ts +12 -0
  26. package/build/dts/devicePair/DevicePair.d.ts +5 -5
  27. package/build/dts/sensor/SensorConfigurationManager.d.ts +2 -1
  28. package/build/dts/sensor/SensorDataManager.d.ts +3 -3
  29. package/build/dts/server/BaseClient.d.ts +4 -4
  30. package/build/dts/server/udp/UDPUtils.d.ts +1 -1
  31. package/build/dts/utils/ArrayBufferUtils.d.ts +1 -0
  32. package/build/dts/utils/AudioUtils.d.ts +2 -0
  33. package/build/dts/utils/BitmapUtils.d.ts +17 -0
  34. package/build/dts/utils/ColorUtils.d.ts +5 -0
  35. package/build/dts/utils/DisplayBitmapUtils.d.ts +47 -0
  36. package/build/dts/utils/DisplayCanvasHelper.d.ts +270 -0
  37. package/build/dts/utils/DisplayContextCommand.d.ts +300 -0
  38. package/build/dts/utils/DisplayContextState.d.ts +51 -0
  39. package/build/dts/utils/DisplayContextStateHelper.d.ts +9 -0
  40. package/build/dts/utils/DisplayManagerInterface.d.ts +173 -0
  41. package/build/dts/utils/DisplaySpriteSheetUtils.d.ts +72 -0
  42. package/build/dts/utils/DisplayUtils.d.ts +70 -0
  43. package/build/dts/utils/MathUtils.d.ts +16 -0
  44. package/build/dts/utils/PathUtils.d.ts +4 -0
  45. package/build/dts/utils/RangeHelper.d.ts +7 -0
  46. package/build/dts/utils/SpriteSheetUtils.d.ts +20 -0
  47. package/build/index.d.ts +1216 -72
  48. package/build/index.node.d.ts +927 -68
  49. package/examples/3d-generic/index.html +5 -0
  50. package/examples/3d-generic/script.js +1 -0
  51. package/examples/basic/index.html +443 -53
  52. package/examples/basic/script.js +1551 -24
  53. package/examples/camera/barcode-detector.js +109 -0
  54. package/examples/camera/depth-estimation.js +71 -0
  55. package/examples/camera/face-detector.js +119 -0
  56. package/examples/camera/face-landmark.js +111 -0
  57. package/examples/camera/gesture-recognition.js +97 -0
  58. package/examples/camera/hand-landmark.js +74 -0
  59. package/examples/camera/image-segmentation.js +98 -0
  60. package/examples/camera/image-to-text.js +43 -0
  61. package/examples/camera/image-upscale.js +75 -0
  62. package/examples/camera/index.html +129 -0
  63. package/examples/camera/object-detection.js +98 -0
  64. package/examples/camera/pose-landmark.js +60 -0
  65. package/examples/camera/script.js +316 -0
  66. package/examples/camera/utils.js +165 -0
  67. package/examples/camera/yolo-tiny.js +54 -0
  68. package/examples/camera/yolo.js +119 -0
  69. package/examples/display-3d/index.html +195 -0
  70. package/examples/display-3d/script.js +1235 -0
  71. package/examples/display-canvas/aframe.js +42950 -0
  72. package/examples/display-canvas/index.html +245 -0
  73. package/examples/display-canvas/script.js +2312 -0
  74. package/examples/display-image/index.html +189 -0
  75. package/examples/display-image/script.js +1093 -0
  76. package/examples/display-spritesheet/index.html +960 -0
  77. package/examples/display-spritesheet/script.js +4243 -0
  78. package/examples/display-text/index.html +195 -0
  79. package/examples/display-text/script.js +1418 -0
  80. package/examples/display-wireframe/index.html +204 -0
  81. package/examples/display-wireframe/script.js +1167 -0
  82. package/examples/edge-impulse/script.js +23 -5
  83. package/examples/glasses-gestures/README.md +11 -0
  84. package/examples/glasses-gestures/edge-impulse-standalone.js +7228 -0
  85. package/examples/glasses-gestures/edge-impulse-standalone.wasm +0 -0
  86. package/examples/glasses-gestures/index.html +74 -0
  87. package/examples/glasses-gestures/run-impulse.js +135 -0
  88. package/examples/glasses-gestures/script.js +228 -0
  89. package/examples/microphone/index.html +104 -0
  90. package/examples/microphone/script.js +394 -0
  91. package/examples/microphone/utils.js +45 -0
  92. package/examples/microphone/whisper-realtime.js +166 -0
  93. package/examples/microphone/whisper.js +132 -0
  94. package/examples/punch/index.html +4 -1
  95. package/examples/server/script.js +0 -1
  96. package/examples/ukaton-firmware-update/merged-firmware.bin +0 -0
  97. package/examples/webxr-3/components/bs-camera.js +65 -0
  98. package/examples/webxr-3/index.html +134 -0
  99. package/examples/webxr-3/script.js +432 -0
  100. package/package.json +10 -2
  101. package/src/BS.ts +101 -1
  102. package/src/CameraManager.ts +10 -8
  103. package/src/Device.ts +652 -11
  104. package/src/DisplayManager.ts +2989 -0
  105. package/src/FileTransferManager.ts +79 -26
  106. package/src/InformationManager.ts +8 -7
  107. package/src/MicrophoneManager.ts +606 -0
  108. package/src/TfliteManager.ts +4 -2
  109. package/src/WifiManager.ts +4 -1
  110. package/src/connection/BaseConnectionManager.ts +4 -0
  111. package/src/connection/bluetooth/bluetoothUUIDs.ts +36 -1
  112. package/src/devicePair/DevicePairPressureSensorDataManager.ts +1 -1
  113. package/src/scanner/NobleScanner.ts +1 -1
  114. package/src/sensor/SensorConfigurationManager.ts +16 -8
  115. package/src/sensor/SensorDataManager.ts +5 -0
  116. package/src/server/udp/UDPServer.ts +4 -4
  117. package/src/server/udp/UDPUtils.ts +1 -1
  118. package/src/server/websocket/WebSocketClient.ts +50 -1
  119. package/src/utils/ArrayBufferUtils.ts +23 -5
  120. package/src/utils/AudioUtils.ts +65 -0
  121. package/src/utils/ColorUtils.ts +66 -0
  122. package/src/utils/DisplayBitmapUtils.ts +695 -0
  123. package/src/utils/DisplayCanvasHelper.ts +4222 -0
  124. package/src/utils/DisplayContextCommand.ts +1566 -0
  125. package/src/utils/DisplayContextState.ts +138 -0
  126. package/src/utils/DisplayContextStateHelper.ts +48 -0
  127. package/src/utils/DisplayManagerInterface.ts +1356 -0
  128. package/src/utils/DisplaySpriteSheetUtils.ts +782 -0
  129. package/src/utils/DisplayUtils.ts +529 -0
  130. package/src/utils/EventDispatcher.ts +59 -14
  131. package/src/utils/MathUtils.ts +88 -2
  132. package/src/utils/ObjectUtils.ts +6 -1
  133. package/src/utils/PathUtils.ts +192 -0
  134. package/src/utils/RangeHelper.ts +15 -3
  135. package/src/utils/Timer.ts +1 -1
  136. package/src/utils/environment.ts +15 -6
@@ -1,3 +1,4 @@
1
+ import opentype, { Font } from 'opentype.js';
1
2
  import * as ws from 'ws';
2
3
  import * as dgram from 'dgram';
3
4
 
@@ -41,10 +42,17 @@ declare namespace environment_d {
41
42
  export { environment_d_isAndroid as isAndroid, environment_d_isBluetoothSupported as isBluetoothSupported, environment_d_isIOS as isIOS, environment_d_isInBluefy as isInBluefy, environment_d_isInBrowser as isInBrowser, environment_d_isInDev as isInDev, environment_d_isInLensStudio as isInLensStudio, environment_d_isInNode as isInNode, environment_d_isInProduction as isInProduction, environment_d_isInWebBLE as isInWebBLE, environment_d_isMac as isMac, environment_d_isSafari as isSafari };
42
43
  }
43
44
 
45
+ interface Range {
46
+ min: number;
47
+ max: number;
48
+ span: number;
49
+ }
44
50
  declare class RangeHelper {
45
51
  #private;
46
52
  get min(): number;
47
53
  get max(): number;
54
+ get span(): number;
55
+ get range(): Range;
48
56
  set min(newMin: number);
49
57
  set max(newMax: number);
50
58
  reset(): void;
@@ -149,6 +157,760 @@ declare class EventDispatcher<Target extends any, EventType extends string, Even
149
157
  }>;
150
158
  }
151
159
 
160
+ declare const DisplaySegmentCaps: readonly ["flat", "round"];
161
+ type DisplaySegmentCap = (typeof DisplaySegmentCaps)[number];
162
+ declare const DisplayAlignments: readonly ["start", "center", "end"];
163
+ type DisplayAlignment = (typeof DisplayAlignments)[number];
164
+ declare const DisplayAlignmentDirections: readonly ["horizontal", "vertical"];
165
+ type DisplayAlignmentDirection = (typeof DisplayAlignmentDirections)[number];
166
+ declare const DisplayDirections: readonly ["right", "left", "up", "down"];
167
+ type DisplayDirection = (typeof DisplayDirections)[number];
168
+ type DisplayContextState = {
169
+ backgroundColorIndex: number;
170
+ fillColorIndex: number;
171
+ lineColorIndex: number;
172
+ ignoreFill: boolean;
173
+ ignoreLine: boolean;
174
+ fillBackground: boolean;
175
+ lineWidth: number;
176
+ rotation: number;
177
+ horizontalAlignment: DisplayAlignment;
178
+ verticalAlignment: DisplayAlignment;
179
+ segmentStartCap: DisplaySegmentCap;
180
+ segmentEndCap: DisplaySegmentCap;
181
+ segmentStartRadius: number;
182
+ segmentEndRadius: number;
183
+ cropTop: number;
184
+ cropRight: number;
185
+ cropBottom: number;
186
+ cropLeft: number;
187
+ rotationCropTop: number;
188
+ rotationCropRight: number;
189
+ rotationCropBottom: number;
190
+ rotationCropLeft: number;
191
+ bitmapColorIndices: number[];
192
+ bitmapScaleX: number;
193
+ bitmapScaleY: number;
194
+ spriteColorIndices: number[];
195
+ spriteScaleX: number;
196
+ spriteScaleY: number;
197
+ spriteSheetName?: string;
198
+ spritesLineHeight: number;
199
+ spritesDirection: DisplayDirection;
200
+ spritesLineDirection: DisplayDirection;
201
+ spritesSpacing: number;
202
+ spritesLineSpacing: number;
203
+ spritesAlignment: DisplayAlignment;
204
+ spritesLineAlignment: DisplayAlignment;
205
+ };
206
+ type DisplayContextStateKey = keyof DisplayContextState;
207
+ type PartialDisplayContextState = Partial<DisplayContextState>;
208
+
209
+ type DisplaySpriteSubLine = {
210
+ spriteSheetName: string;
211
+ spriteNames: string[];
212
+ };
213
+ type DisplaySpriteLine = DisplaySpriteSubLine[];
214
+ type DisplaySpriteLines = DisplaySpriteLine[];
215
+ type DisplaySpriteSerializedSubLine = {
216
+ spriteSheetIndex: number;
217
+ spriteIndices: number[];
218
+ use2Bytes: boolean;
219
+ };
220
+ type DisplaySpriteSerializedLine = DisplaySpriteSerializedSubLine[];
221
+ type DisplaySpriteSerializedLines = DisplaySpriteSerializedLine[];
222
+ type DisplaySpritePaletteSwap = {
223
+ name: string;
224
+ numberOfColors: number;
225
+ spriteColorIndices: number[];
226
+ };
227
+ type DisplaySprite = {
228
+ name: string;
229
+ width: number;
230
+ height: number;
231
+ paletteSwaps?: DisplaySpritePaletteSwap[];
232
+ commands: DisplayContextCommand[];
233
+ };
234
+ type DisplaySpriteSheetPaletteSwap = {
235
+ name: string;
236
+ numberOfColors: number;
237
+ spriteColorIndices: number[];
238
+ };
239
+ type DisplaySpriteSheetPalette = {
240
+ name: string;
241
+ numberOfColors: number;
242
+ colors: string[];
243
+ opacities?: number[];
244
+ };
245
+ type DisplaySpriteSheet = {
246
+ name: string;
247
+ palettes?: DisplaySpriteSheetPalette[];
248
+ paletteSwaps?: DisplaySpriteSheetPaletteSwap[];
249
+ sprites: DisplaySprite[];
250
+ };
251
+ type FontToSpriteSheetOptions = {
252
+ stroke?: boolean;
253
+ strokeWidth?: number;
254
+ unicodeOnly?: boolean;
255
+ englishOnly?: boolean;
256
+ usePath?: boolean;
257
+ script?: string;
258
+ string?: string;
259
+ };
260
+ declare function parseFont(arrayBuffer: ArrayBuffer): Promise<opentype.Font>;
261
+ declare function getFontUnicodeRange(font: Font): Range | undefined;
262
+ declare function fontToSpriteSheet(font: Font | Font[], fontSize: number, spriteSheetName?: string, options?: FontToSpriteSheetOptions): Promise<DisplaySpriteSheet>;
263
+ declare function stringToSprites(string: string, spriteSheet: DisplaySpriteSheet, requireAll?: boolean): DisplaySprite[];
264
+
265
+ interface DisplayManagerInterface {
266
+ get isReady(): boolean;
267
+ get contextState(): DisplayContextState;
268
+ flushContextCommands(): Promise<void>;
269
+ get brightness(): DisplayBrightness;
270
+ setBrightness(newDisplayBrightness: DisplayBrightness, sendImmediately?: boolean): Promise<void>;
271
+ show(sendImmediately?: boolean): Promise<void>;
272
+ clear(sendImmediately?: boolean): Promise<void>;
273
+ get colors(): string[];
274
+ get numberOfColors(): number;
275
+ setColor(colorIndex: number, color: DisplayColorRGB | string, sendImmediately?: boolean): Promise<void>;
276
+ assertValidColorIndex(colorIndex: number): void;
277
+ assertValidLineWidth(lineWidth: number): void;
278
+ assertValidNumberOfColors(numberOfColors: number): void;
279
+ assertValidBitmap(bitmap: DisplayBitmap, checkSize?: boolean): void;
280
+ get opacities(): number[];
281
+ setColorOpacity(colorIndex: number, opacity: number, sendImmediately?: boolean): Promise<void>;
282
+ setOpacity(opacity: number, sendImmediately?: boolean): Promise<void>;
283
+ saveContext(sendImmediately?: boolean): Promise<void>;
284
+ restoreContext(sendImmediately?: boolean): Promise<void>;
285
+ selectFillColor(fillColorIndex: number, sendImmediately?: boolean): Promise<void>;
286
+ selectBackgroundColor(backgroundColorIndex: number, sendImmediately?: boolean): Promise<void>;
287
+ selectLineColor(lineColorIndex: number, sendImmediately?: boolean): Promise<void>;
288
+ setLineWidth(lineWidth: number, sendImmediately?: boolean): Promise<void>;
289
+ setIgnoreFill(ignoreFill: boolean, sendImmediately?: boolean): Promise<void>;
290
+ setIgnoreLine(ignoreLine: boolean, sendImmediately?: boolean): Promise<void>;
291
+ setFillBackground(fillBackground: boolean, sendImmediately?: boolean): Promise<void>;
292
+ setAlignment(alignmentDirection: DisplayAlignmentDirection, alignment: DisplayAlignment, sendImmediately?: boolean): Promise<void>;
293
+ setHorizontalAlignment(horizontalAlignment: DisplayAlignment, sendImmediately?: boolean): Promise<void>;
294
+ setVerticalAlignment(verticalAlignment: DisplayAlignment, sendImmediately?: boolean): Promise<void>;
295
+ resetAlignment(sendImmediately?: boolean): Promise<void>;
296
+ setRotation(rotation: number, isRadians?: boolean, sendImmediately?: boolean): Promise<void>;
297
+ clearRotation(sendImmediately?: boolean): Promise<void>;
298
+ setSegmentStartCap(segmentStartCap: DisplaySegmentCap, sendImmediately?: boolean): Promise<void>;
299
+ setSegmentEndCap(segmentEndCap: DisplaySegmentCap, sendImmediately?: boolean): Promise<void>;
300
+ setSegmentCap(segmentCap: DisplaySegmentCap, sendImmediately?: boolean): Promise<void>;
301
+ setSegmentStartRadius(segmentStartRadius: number, sendImmediately?: boolean): Promise<void>;
302
+ setSegmentEndRadius(segmentEndRadius: number, sendImmediately?: boolean): Promise<void>;
303
+ setSegmentRadius(segmentRadius: number, sendImmediately?: boolean): Promise<void>;
304
+ setCrop(cropDirection: DisplayCropDirection, crop: number, sendImmediately?: boolean): Promise<void>;
305
+ setCropTop(cropTop: number, sendImmediately?: boolean): Promise<void>;
306
+ setCropRight(cropRight: number, sendImmediately?: boolean): Promise<void>;
307
+ setCropBottom(cropBottom: number, sendImmediately?: boolean): Promise<void>;
308
+ setCropLeft(cropLeft: number, sendImmediately?: boolean): Promise<void>;
309
+ clearCrop(sendImmediately?: boolean): Promise<void>;
310
+ setRotationCrop(cropDirection: DisplayCropDirection, crop: number, sendImmediately?: boolean): Promise<void>;
311
+ setRotationCropTop(rotationCropTop: number, sendImmediately?: boolean): Promise<void>;
312
+ setRotationCropRight(rotationCropRight: number, sendImmediately?: boolean): Promise<void>;
313
+ setRotationCropBottom(rotationCropBottom: number, sendImmediately?: boolean): Promise<void>;
314
+ setRotationCropLeft(rotationCropLeft: number, sendImmediately?: boolean): Promise<void>;
315
+ clearRotationCrop(sendImmediately?: boolean): Promise<void>;
316
+ selectBitmapColor(bitmapColorIndex: number, colorIndex: number, sendImmediately?: boolean): Promise<void>;
317
+ get bitmapColorIndices(): number[];
318
+ get bitmapColors(): string[];
319
+ selectBitmapColors(bitmapColorPairs: DisplayBitmapColorPair[], sendImmediately?: boolean): Promise<void>;
320
+ setBitmapColor(bitmapColorIndex: number, color: DisplayColorRGB | string, sendImmediately?: boolean): Promise<void>;
321
+ setBitmapColorOpacity(bitmapColorIndex: number, opacity: number, sendImmediately?: boolean): Promise<void>;
322
+ setBitmapScaleDirection(direction: DisplayScaleDirection, bitmapScale: number, sendImmediately?: boolean): Promise<void>;
323
+ setBitmapScaleX(bitmapScaleX: number, sendImmediately?: boolean): Promise<void>;
324
+ setBitmapScaleY(bitmapScaleY: number, sendImmediately?: boolean): Promise<void>;
325
+ setBitmapScale(bitmapScale: number, sendImmediately?: boolean): Promise<void>;
326
+ resetBitmapScale(sendImmediately?: boolean): Promise<void>;
327
+ selectSpriteColor(spriteColorIndex: number, colorIndex: number, sendImmediately?: boolean): Promise<void>;
328
+ get spriteColorIndices(): number[];
329
+ get spriteColors(): string[];
330
+ selectSpriteColors(spriteColorPairs: DisplaySpriteColorPair[], sendImmediately?: boolean): Promise<void>;
331
+ resetSpriteColors(sendImmediately?: boolean): Promise<void>;
332
+ setSpriteColor(spriteColorIndex: number, color: DisplayColorRGB | string, sendImmediately?: boolean): Promise<void>;
333
+ setSpriteColorOpacity(spriteColorIndex: number, opacity: number, sendImmediately?: boolean): Promise<void>;
334
+ setSpriteScaleDirection(direction: DisplayScaleDirection, spriteScale: number, sendImmediately?: boolean): Promise<void>;
335
+ setSpriteScaleX(spriteScaleX: number, sendImmediately?: boolean): Promise<void>;
336
+ setSpriteScaleY(spriteScaleY: number, sendImmediately?: boolean): Promise<void>;
337
+ setSpriteScale(spriteScale: number, sendImmediately?: boolean): Promise<void>;
338
+ resetSpriteScale(sendImmediately?: boolean): Promise<void>;
339
+ setSpritesLineHeight(spritesLineHeight: number, sendImmediately?: boolean): Promise<void>;
340
+ setSpritesDirectionGeneric(direction: DisplayDirection, isOrthogonal: boolean, sendImmediately?: boolean): Promise<void>;
341
+ setSpritesDirection(spritesDirection: DisplayDirection, sendImmediately?: boolean): Promise<void>;
342
+ setSpritesLineDirection(spritesLineDirection: DisplayDirection, sendImmediately?: boolean): Promise<void>;
343
+ setSpritesSpacingGeneric(spacing: number, isOrthogonal: boolean, sendImmediately?: boolean): Promise<void>;
344
+ setSpritesSpacing(spritesSpacing: number, sendImmediately?: boolean): Promise<void>;
345
+ setSpritesLineSpacing(spritesSpacing: number, sendImmediately?: boolean): Promise<void>;
346
+ setSpritesAlignmentGeneric(alignment: DisplayAlignment, isOrthogonal: boolean, sendImmediately?: boolean): Promise<void>;
347
+ setSpritesAlignment(spritesAlignment: DisplayAlignment, sendImmediately?: boolean): Promise<void>;
348
+ setSpritesLineAlignment(spritesLineAlignment: DisplayAlignment, sendImmediately?: boolean): Promise<void>;
349
+ clearRect(x: number, y: number, width: number, height: number, sendImmediately?: boolean): Promise<void>;
350
+ drawRect(offsetX: number, offsetY: number, width: number, height: number, sendImmediately?: boolean): Promise<void>;
351
+ drawRoundRect(offsetX: number, offsetY: number, width: number, height: number, borderRadius: number, sendImmediately?: boolean): Promise<void>;
352
+ drawCircle(offsetX: number, offsetY: number, radius: number, sendImmediately?: boolean): Promise<void>;
353
+ drawEllipse(offsetX: number, offsetY: number, radiusX: number, radiusY: number, sendImmediately?: boolean): Promise<void>;
354
+ drawRegularPolygon(offsetX: number, offsetY: number, radius: number, numberOfSides: number, sendImmediately?: boolean): Promise<void>;
355
+ drawPolygon(points: Vector2[], sendImmediately?: boolean): Promise<void>;
356
+ drawWireframe(wireframe: DisplayWireframe, sendImmediately?: boolean): Promise<void>;
357
+ drawCurve(curveType: DisplayBezierCurveType, controlPoints: Vector2[], sendImmediately?: boolean): Promise<void>;
358
+ drawCurves(curveType: DisplayBezierCurveType, controlPoints: Vector2[], sendImmediately?: boolean): Promise<void>;
359
+ drawQuadraticBezierCurve(controlPoints: Vector2[], sendImmediately?: boolean): Promise<void>;
360
+ drawQuadraticBezierCurves(controlPoints: Vector2[], sendImmediately?: boolean): Promise<void>;
361
+ drawCubicBezierCurve(controlPoints: Vector2[], sendImmediately?: boolean): Promise<void>;
362
+ drawCubicBezierCurves(controlPoints: Vector2[], sendImmediately?: boolean): Promise<void>;
363
+ _drawPath(isClosed: boolean, curves: DisplayBezierCurve[], sendImmediately?: boolean): Promise<void>;
364
+ drawPath(curves: DisplayBezierCurve[], sendImmediately?: boolean): Promise<void>;
365
+ drawClosedPath(curves: DisplayBezierCurve[], sendImmediately?: boolean): Promise<void>;
366
+ drawSegment(startX: number, startY: number, endX: number, endY: number, sendImmediately?: boolean): Promise<void>;
367
+ drawSegments(points: Vector2[], sendImmediately?: boolean): Promise<void>;
368
+ drawArc(offsetX: number, offsetY: number, radius: number, startAngle: number, angleOffset: number, isRadians?: boolean, sendImmediately?: boolean): Promise<void>;
369
+ drawArcEllipse(offsetX: number, offsetY: number, radiusX: number, radiusY: number, startAngle: number, angleOffset: number, isRadians?: boolean, sendImmediately?: boolean): Promise<void>;
370
+ drawBitmap(offsetX: number, offsetY: number, bitmap: DisplayBitmap, sendImmediately?: boolean): Promise<void>;
371
+ runContextCommand(command: DisplayContextCommand, sendImmediately?: boolean): Promise<void>;
372
+ runContextCommands(commands: DisplayContextCommand[], sendImmediately?: boolean): Promise<void>;
373
+ imageToBitmap(image: HTMLImageElement, width: number, height: number, numberOfColors?: number): Promise<{
374
+ blob: Blob;
375
+ bitmap: DisplayBitmap;
376
+ }>;
377
+ quantizeImage(image: HTMLImageElement, width: number, height: number, numberOfColors: number, colors?: string[], canvas?: HTMLCanvasElement): Promise<{
378
+ blob: Blob;
379
+ colors: string[];
380
+ colorIndices: number[];
381
+ }>;
382
+ resizeAndQuantizeImage(image: HTMLImageElement, width: number, height: number, numberOfColors: number, colors?: string[], canvas?: HTMLCanvasElement): Promise<{
383
+ blob: Blob;
384
+ colors: string[];
385
+ colorIndices: number[];
386
+ }>;
387
+ uploadSpriteSheet(spriteSheet: DisplaySpriteSheet): Promise<void>;
388
+ uploadSpriteSheets(spriteSheets: DisplaySpriteSheet[]): Promise<void>;
389
+ selectSpriteSheet(spriteSheetName: string, sendImmediately?: boolean): Promise<void>;
390
+ drawSprite(offsetX: number, offsetY: number, spriteName: string, sendImmediately?: boolean): Promise<void>;
391
+ stringToSpriteLines(string: string, requireAll?: boolean, maxLineBreadth?: number, separators?: string[]): DisplaySpriteLines;
392
+ drawSprites(offsetX: number, offsetY: number, spriteLines: DisplaySpriteLines, sendImmediately?: boolean): Promise<void>;
393
+ drawSpritesString(offsetX: number, offsetY: number, string: string, requireAll?: boolean, maxLineBreadth?: number, separators?: string[], sendImmediately?: boolean): Promise<void>;
394
+ assertLoadedSpriteSheet(spriteSheetName: string): void;
395
+ assertSelectedSpriteSheet(spriteSheetName: string): void;
396
+ assertAnySelectedSpriteSheet(): void;
397
+ assertSprite(spriteName: string): void;
398
+ getSprite(spriteName: string): DisplaySprite | undefined;
399
+ getSpriteSheetPalette(paletteName: string): DisplaySpriteSheetPalette | undefined;
400
+ getSpriteSheetPaletteSwap(paletteSwapName: string): DisplaySpriteSheetPaletteSwap | undefined;
401
+ getSpritePaletteSwap(spriteName: string, paletteSwapName: string): DisplaySpritePaletteSwap | undefined;
402
+ drawSpriteFromSpriteSheet(offsetX: number, offsetY: number, spriteName: string, spriteSheet: DisplaySpriteSheet, paletteName?: string, sendImmediately?: boolean): Promise<void>;
403
+ get selectedSpriteSheet(): DisplaySpriteSheet | undefined;
404
+ get selectedSpriteSheetName(): string | undefined;
405
+ spriteSheets: Record<string, DisplaySpriteSheet>;
406
+ spriteSheetIndices: Record<string, number>;
407
+ assertSpriteSheetPalette(paletteName: string): void;
408
+ assertSpriteSheetPaletteSwap(paletteSwapName: string): void;
409
+ assertSpritePaletteSwap(spriteName: string, paletteSwapName: string): void;
410
+ selectSpriteSheetPalette(paletteName: string, offset?: number, sendImmediately?: boolean): Promise<void>;
411
+ selectSpriteSheetPaletteSwap(paletteSwapName: string, offset?: number, sendImmediately?: boolean): Promise<void>;
412
+ selectSpritePaletteSwap(spriteName: string, paletteSwapName: string, offset?: number, sendImmediately?: boolean): Promise<void>;
413
+ serializeSpriteSheet(spriteSheet: DisplaySpriteSheet): ArrayBuffer;
414
+ }
415
+
416
+ declare const DisplayContextCommandTypes: readonly ["show", "clear", "setColor", "setColorOpacity", "setOpacity", "saveContext", "restoreContext", "selectBackgroundColor", "selectFillColor", "selectLineColor", "setIgnoreFill", "setIgnoreLine", "setFillBackground", "setLineWidth", "setRotation", "clearRotation", "setHorizontalAlignment", "setVerticalAlignment", "resetAlignment", "setSegmentStartCap", "setSegmentEndCap", "setSegmentCap", "setSegmentStartRadius", "setSegmentEndRadius", "setSegmentRadius", "setCropTop", "setCropRight", "setCropBottom", "setCropLeft", "clearCrop", "setRotationCropTop", "setRotationCropRight", "setRotationCropBottom", "setRotationCropLeft", "clearRotationCrop", "selectBitmapColor", "selectBitmapColors", "setBitmapScaleX", "setBitmapScaleY", "setBitmapScale", "resetBitmapScale", "selectSpriteColor", "selectSpriteColors", "resetSpriteColors", "setSpriteScaleX", "setSpriteScaleY", "setSpriteScale", "resetSpriteScale", "setSpritesLineHeight", "setSpritesDirection", "setSpritesLineDirection", "setSpritesSpacing", "setSpritesLineSpacing", "setSpritesAlignment", "setSpritesLineAlignment", "clearRect", "drawRect", "drawRoundRect", "drawCircle", "drawArc", "drawEllipse", "drawArcEllipse", "drawSegment", "drawSegments", "drawRegularPolygon", "drawPolygon", "drawWireframe", "drawQuadraticBezierCurve", "drawQuadraticBezierCurves", "drawCubicBezierCurve", "drawCubicBezierCurves", "drawPath", "drawClosedPath", "drawBitmap", "selectSpriteSheet", "drawSprite", "drawSprites"];
417
+ type DisplayContextCommandType = (typeof DisplayContextCommandTypes)[number];
418
+ declare const DisplaySpriteContextCommandTypes: readonly ["selectFillColor", "selectLineColor", "setIgnoreFill", "setIgnoreLine", "setLineWidth", "setRotation", "clearRotation", "setVerticalAlignment", "setHorizontalAlignment", "resetAlignment", "setSegmentStartCap", "setSegmentEndCap", "setSegmentCap", "setSegmentStartRadius", "setSegmentEndRadius", "setSegmentRadius", "setCropTop", "setCropRight", "setCropBottom", "setCropLeft", "clearCrop", "setRotationCropTop", "setRotationCropRight", "setRotationCropBottom", "setRotationCropLeft", "clearRotationCrop", "selectBitmapColor", "selectBitmapColors", "setBitmapScaleX", "setBitmapScaleY", "setBitmapScale", "resetBitmapScale", "selectSpriteColor", "selectSpriteColors", "resetSpriteColors", "setSpriteScaleX", "setSpriteScaleY", "setSpriteScale", "resetSpriteScale", "clearRect", "drawRect", "drawRoundRect", "drawCircle", "drawEllipse", "drawRegularPolygon", "drawPolygon", "drawWireframe", "drawQuadraticBezierCurve", "drawQuadraticBezierCurves", "drawCubicBezierCurve", "drawCubicBezierCurves", "drawPath", "drawClosedPath", "drawSegment", "drawSegments", "drawArc", "drawArcEllipse", "drawBitmap", "drawSprite"];
419
+ type DisplaySpriteContextCommandType = (typeof DisplaySpriteContextCommandTypes)[number];
420
+ interface BaseDisplayContextCommand {
421
+ type: DisplayContextCommandType | "runDisplayContextCommands";
422
+ hide?: boolean;
423
+ }
424
+ interface SimpleDisplayCommand extends BaseDisplayContextCommand {
425
+ type: "show" | "clear" | "saveContext" | "restoreContext" | "clearRotation" | "clearCrop" | "clearRotationCrop" | "resetBitmapScale" | "resetSpriteColors" | "resetSpriteScale" | "resetAlignment";
426
+ }
427
+ interface SetDisplayColorCommand extends BaseDisplayContextCommand {
428
+ type: "setColor";
429
+ colorIndex: number;
430
+ color: DisplayColorRGB | string;
431
+ }
432
+ interface SetDisplayColorOpacityCommand extends BaseDisplayContextCommand {
433
+ type: "setColorOpacity";
434
+ colorIndex: number;
435
+ opacity: number;
436
+ }
437
+ interface SetDisplayOpacityCommand extends BaseDisplayContextCommand {
438
+ type: "setOpacity";
439
+ opacity: number;
440
+ }
441
+ interface SetDisplayHorizontalAlignmentCommand extends BaseDisplayContextCommand {
442
+ type: "setHorizontalAlignment";
443
+ horizontalAlignment: DisplayAlignment;
444
+ }
445
+ interface SetDisplayVerticalAlignmentCommand extends BaseDisplayContextCommand {
446
+ type: "setVerticalAlignment";
447
+ verticalAlignment: DisplayAlignment;
448
+ }
449
+ interface SelectDisplayBackgroundColorCommand extends BaseDisplayContextCommand {
450
+ type: "selectBackgroundColor";
451
+ backgroundColorIndex: number;
452
+ }
453
+ interface SelectDisplayFillColorCommand extends BaseDisplayContextCommand {
454
+ type: "selectFillColor";
455
+ fillColorIndex: number;
456
+ }
457
+ interface SelectDisplayLineColorCommand extends BaseDisplayContextCommand {
458
+ type: "selectLineColor";
459
+ lineColorIndex: number;
460
+ }
461
+ interface SelectDisplayIgnoreFillCommand extends BaseDisplayContextCommand {
462
+ type: "setIgnoreFill";
463
+ ignoreFill: boolean;
464
+ }
465
+ interface SelectDisplayIgnoreLineCommand extends BaseDisplayContextCommand {
466
+ type: "setIgnoreLine";
467
+ ignoreLine: boolean;
468
+ }
469
+ interface SelectDisplayFillBackgroundCommand extends BaseDisplayContextCommand {
470
+ type: "setFillBackground";
471
+ fillBackground: boolean;
472
+ }
473
+ interface SetDisplayLineWidthCommand extends BaseDisplayContextCommand {
474
+ type: "setLineWidth";
475
+ lineWidth: number;
476
+ }
477
+ interface SetDisplayRotationCommand extends BaseDisplayContextCommand {
478
+ type: "setRotation";
479
+ rotation: number;
480
+ isRadians?: boolean;
481
+ }
482
+ interface SetDisplaySegmentStartCapCommand extends BaseDisplayContextCommand {
483
+ type: "setSegmentStartCap";
484
+ segmentStartCap: DisplaySegmentCap;
485
+ }
486
+ interface SetDisplaySegmentEndCapCommand extends BaseDisplayContextCommand {
487
+ type: "setSegmentEndCap";
488
+ segmentEndCap: DisplaySegmentCap;
489
+ }
490
+ interface SetDisplaySegmentCapCommand extends BaseDisplayContextCommand {
491
+ type: "setSegmentCap";
492
+ segmentCap: DisplaySegmentCap;
493
+ }
494
+ interface SetDisplaySegmentStartRadiusCommand extends BaseDisplayContextCommand {
495
+ type: "setSegmentStartRadius";
496
+ segmentStartRadius: number;
497
+ }
498
+ interface SetDisplaySegmentEndRadiusCommand extends BaseDisplayContextCommand {
499
+ type: "setSegmentEndRadius";
500
+ segmentEndRadius: number;
501
+ }
502
+ interface SetDisplaySegmentRadiusCommand extends BaseDisplayContextCommand {
503
+ type: "setSegmentRadius";
504
+ segmentRadius: number;
505
+ }
506
+ interface SetDisplayCropTopCommand extends BaseDisplayContextCommand {
507
+ type: "setCropTop";
508
+ cropTop: number;
509
+ }
510
+ interface SetDisplayCropRightCommand extends BaseDisplayContextCommand {
511
+ type: "setCropRight";
512
+ cropRight: number;
513
+ }
514
+ interface SetDisplayCropBottomCommand extends BaseDisplayContextCommand {
515
+ type: "setCropBottom";
516
+ cropBottom: number;
517
+ }
518
+ interface SetDisplayCropLeftCommand extends BaseDisplayContextCommand {
519
+ type: "setCropLeft";
520
+ cropLeft: number;
521
+ }
522
+ interface SetDisplayRotationCropTopCommand extends BaseDisplayContextCommand {
523
+ type: "setRotationCropTop";
524
+ rotationCropTop: number;
525
+ }
526
+ interface SetDisplayRotationCropRightCommand extends BaseDisplayContextCommand {
527
+ type: "setRotationCropRight";
528
+ rotationCropRight: number;
529
+ }
530
+ interface SetDisplayRotationCropBottomCommand extends BaseDisplayContextCommand {
531
+ type: "setRotationCropBottom";
532
+ rotationCropBottom: number;
533
+ }
534
+ interface SetDisplayRotationCropLeftCommand extends BaseDisplayContextCommand {
535
+ type: "setRotationCropLeft";
536
+ rotationCropLeft: number;
537
+ }
538
+ interface SelectDisplayBitmapColorIndexCommand extends BaseDisplayContextCommand {
539
+ type: "selectBitmapColor";
540
+ bitmapColorIndex: number;
541
+ colorIndex: number;
542
+ }
543
+ interface SelectDisplayBitmapColorIndicesCommand extends BaseDisplayContextCommand {
544
+ type: "selectBitmapColors";
545
+ bitmapColorPairs: DisplayBitmapColorPair[];
546
+ }
547
+ interface SetDisplayBitmapScaleXCommand extends BaseDisplayContextCommand {
548
+ type: "setBitmapScaleX";
549
+ bitmapScaleX: number;
550
+ }
551
+ interface SetDisplayBitmapScaleYCommand extends BaseDisplayContextCommand {
552
+ type: "setBitmapScaleY";
553
+ bitmapScaleY: number;
554
+ }
555
+ interface SetDisplayBitmapScaleCommand extends BaseDisplayContextCommand {
556
+ type: "setBitmapScale";
557
+ bitmapScale: number;
558
+ }
559
+ interface SelectDisplaySpriteColorIndexCommand extends BaseDisplayContextCommand {
560
+ type: "selectSpriteColor";
561
+ spriteColorIndex: number;
562
+ colorIndex: number;
563
+ }
564
+ interface SelectDisplaySpriteColorIndicesCommand extends BaseDisplayContextCommand {
565
+ type: "selectSpriteColors";
566
+ spriteColorPairs: DisplaySpriteColorPair[];
567
+ }
568
+ interface SetDisplaySpriteScaleXCommand extends BaseDisplayContextCommand {
569
+ type: "setSpriteScaleX";
570
+ spriteScaleX: number;
571
+ }
572
+ interface SetDisplaySpriteScaleYCommand extends BaseDisplayContextCommand {
573
+ type: "setSpriteScaleY";
574
+ spriteScaleY: number;
575
+ }
576
+ interface SetDisplaySpriteScaleCommand extends BaseDisplayContextCommand {
577
+ type: "setSpriteScale";
578
+ spriteScale: number;
579
+ }
580
+ interface SetDisplaySpritesLineHeightCommand extends BaseDisplayContextCommand {
581
+ type: "setSpritesLineHeight";
582
+ spritesLineHeight: number;
583
+ }
584
+ interface SetDisplaySpritesDirectionCommand extends BaseDisplayContextCommand {
585
+ type: "setSpritesDirection";
586
+ spritesDirection: DisplayDirection;
587
+ }
588
+ interface SetDisplaySpritesLineDirectionCommand extends BaseDisplayContextCommand {
589
+ type: "setSpritesLineDirection";
590
+ spritesLineDirection: DisplayDirection;
591
+ }
592
+ interface SetDisplaySpritesSpacingCommand extends BaseDisplayContextCommand {
593
+ type: "setSpritesSpacing";
594
+ spritesSpacing: number;
595
+ }
596
+ interface SetDisplaySpritesLineSpacingCommand extends BaseDisplayContextCommand {
597
+ type: "setSpritesLineSpacing";
598
+ spritesLineSpacing: number;
599
+ }
600
+ interface SetDisplaySpritesAlignmentCommand extends BaseDisplayContextCommand {
601
+ type: "setSpritesAlignment";
602
+ spritesAlignment: DisplayAlignment;
603
+ }
604
+ interface SetDisplaySpritesLineAlignmentCommand extends BaseDisplayContextCommand {
605
+ type: "setSpritesLineAlignment";
606
+ spritesLineAlignment: DisplayAlignment;
607
+ }
608
+ interface BasePositionDisplayContextCommand extends BaseDisplayContextCommand {
609
+ x: number;
610
+ y: number;
611
+ }
612
+ interface BaseOffsetPositionDisplayContextCommand extends BaseDisplayContextCommand {
613
+ offsetX: number;
614
+ offsetY: number;
615
+ }
616
+ interface BaseSizeDisplayContextCommand extends BaseDisplayContextCommand {
617
+ width: number;
618
+ height: number;
619
+ }
620
+ interface BaseDisplayRectCommand extends BasePositionDisplayContextCommand, BaseSizeDisplayContextCommand {
621
+ }
622
+ interface BaseDisplayCenterRectCommand extends BaseOffsetPositionDisplayContextCommand, BaseSizeDisplayContextCommand {
623
+ }
624
+ interface ClearDisplayRectCommand extends BaseDisplayRectCommand {
625
+ type: "clearRect";
626
+ }
627
+ interface DrawDisplayRectCommand extends BaseDisplayCenterRectCommand {
628
+ type: "drawRect";
629
+ }
630
+ interface DrawDisplayRoundedRectCommand extends BaseOffsetPositionDisplayContextCommand, BaseSizeDisplayContextCommand {
631
+ type: "drawRoundRect";
632
+ borderRadius: number;
633
+ }
634
+ interface DrawDisplayCircleCommand extends BaseOffsetPositionDisplayContextCommand {
635
+ type: "drawCircle";
636
+ radius: number;
637
+ }
638
+ interface DrawDisplayEllipseCommand extends BaseOffsetPositionDisplayContextCommand {
639
+ type: "drawEllipse";
640
+ radiusX: number;
641
+ radiusY: number;
642
+ }
643
+ interface DrawDisplayRegularPolygonCommand extends BaseOffsetPositionDisplayContextCommand {
644
+ type: "drawRegularPolygon";
645
+ radius: number;
646
+ numberOfSides: number;
647
+ }
648
+ interface DrawDisplayPolygonCommand extends BaseDisplayContextCommand {
649
+ type: "drawPolygon";
650
+ points: Vector2[];
651
+ }
652
+ interface DrawDisplaySegmentCommand extends BaseDisplayContextCommand {
653
+ type: "drawSegment";
654
+ startX: number;
655
+ startY: number;
656
+ endX: number;
657
+ endY: number;
658
+ }
659
+ interface DrawDisplaySegmentsCommand extends BaseDisplayContextCommand {
660
+ type: "drawSegments";
661
+ points: Vector2[];
662
+ }
663
+ interface DrawDisplayBezierCurveCommand extends BaseDisplayContextCommand {
664
+ type: "drawQuadraticBezierCurve" | "drawQuadraticBezierCurves" | "drawCubicBezierCurve" | "drawCubicBezierCurves";
665
+ controlPoints: Vector2[];
666
+ }
667
+ interface DrawDisplayPathCommand extends BaseDisplayContextCommand {
668
+ type: "drawPath" | "drawClosedPath";
669
+ curves: DisplayBezierCurve[];
670
+ }
671
+ interface DrawDisplayWireframeCommand extends BaseDisplayContextCommand {
672
+ type: "drawWireframe";
673
+ wireframe: DisplayWireframe;
674
+ }
675
+ interface DrawDisplayArcCommand extends BaseOffsetPositionDisplayContextCommand {
676
+ type: "drawArc";
677
+ radius: number;
678
+ startAngle: number;
679
+ angleOffset: number;
680
+ isRadians?: boolean;
681
+ }
682
+ interface DrawDisplayArcEllipseCommand extends BaseOffsetPositionDisplayContextCommand {
683
+ type: "drawArcEllipse";
684
+ radiusX: number;
685
+ radiusY: number;
686
+ startAngle: number;
687
+ angleOffset: number;
688
+ isRadians?: boolean;
689
+ }
690
+ interface DrawDisplayBitmapCommand extends BaseOffsetPositionDisplayContextCommand {
691
+ type: "drawBitmap";
692
+ bitmap: DisplayBitmap;
693
+ }
694
+ interface SelectDisplaySpriteSheetCommand extends BaseDisplayContextCommand {
695
+ type: "selectSpriteSheet";
696
+ spriteSheetIndex: number;
697
+ }
698
+ interface DrawDisplaySpriteCommand extends BaseOffsetPositionDisplayContextCommand {
699
+ type: "drawSprite";
700
+ spriteIndex: number;
701
+ use2Bytes: boolean;
702
+ }
703
+ interface DrawDisplaySpritesCommand extends BaseOffsetPositionDisplayContextCommand {
704
+ type: "drawSprites";
705
+ spriteSerializedLines: DisplaySpriteSerializedLines;
706
+ }
707
+ type DisplayContextCommand = SimpleDisplayCommand | SetDisplayColorCommand | SetDisplayColorOpacityCommand | SetDisplayOpacityCommand | SelectDisplayBackgroundColorCommand | SelectDisplayFillColorCommand | SelectDisplayLineColorCommand | SetDisplayLineWidthCommand | SetDisplayRotationCommand | SetDisplaySegmentStartCapCommand | SetDisplaySegmentEndCapCommand | SetDisplaySegmentCapCommand | SetDisplaySegmentStartRadiusCommand | SetDisplaySegmentEndRadiusCommand | SetDisplaySegmentRadiusCommand | SetDisplayCropTopCommand | SetDisplayCropRightCommand | SetDisplayCropBottomCommand | SetDisplayCropLeftCommand | SetDisplayRotationCropTopCommand | SetDisplayRotationCropRightCommand | SetDisplayRotationCropBottomCommand | SetDisplayRotationCropLeftCommand | SelectDisplayBitmapColorIndexCommand | SelectDisplayBitmapColorIndicesCommand | SetDisplayBitmapScaleXCommand | SetDisplayBitmapScaleYCommand | SetDisplayBitmapScaleCommand | SelectDisplaySpriteColorIndexCommand | SelectDisplaySpriteColorIndicesCommand | SetDisplaySpriteScaleXCommand | SetDisplaySpriteScaleYCommand | SetDisplaySpriteScaleCommand | ClearDisplayRectCommand | DrawDisplayRectCommand | DrawDisplayRoundedRectCommand | DrawDisplayCircleCommand | DrawDisplayEllipseCommand | DrawDisplayRegularPolygonCommand | DrawDisplayPolygonCommand | DrawDisplaySegmentCommand | DrawDisplaySegmentsCommand | DrawDisplayArcCommand | DrawDisplayArcEllipseCommand | DrawDisplayBitmapCommand | DrawDisplaySpriteCommand | DrawDisplaySpritesCommand | SelectDisplaySpriteSheetCommand | SetDisplayHorizontalAlignmentCommand | SetDisplayVerticalAlignmentCommand | SetDisplaySpritesDirectionCommand | SetDisplaySpritesLineDirectionCommand | SetDisplaySpritesSpacingCommand | SetDisplaySpritesLineSpacingCommand | SetDisplaySpritesAlignmentCommand | SetDisplaySpritesLineAlignmentCommand | SetDisplaySpritesLineHeightCommand | DrawDisplayWireframeCommand | DrawDisplayBezierCurveCommand | DrawDisplayPathCommand | SelectDisplayIgnoreFillCommand | SelectDisplayIgnoreLineCommand | SelectDisplayFillBackgroundCommand;
708
+
709
+ type FileLike = number[] | ArrayBuffer | DataView | URL | string | File;
710
+
711
+ declare const FileTypes: readonly ["tflite", "wifiServerCert", "wifiServerKey", "spriteSheet"];
712
+ type FileType = (typeof FileTypes)[number];
713
+ declare const FileTransferStatuses: readonly ["idle", "sending", "receiving"];
714
+ type FileTransferStatus = (typeof FileTransferStatuses)[number];
715
+ declare const FileTransferDirections: readonly ["sending", "receiving"];
716
+ type FileTransferDirection = (typeof FileTransferDirections)[number];
717
+ interface FileConfiguration {
718
+ file: FileLike;
719
+ type: FileType;
720
+ }
721
+ interface FileTransferEventMessages {
722
+ getFileTypes: {
723
+ fileTypes: FileType[];
724
+ };
725
+ maxFileLength: {
726
+ maxFileLength: number;
727
+ };
728
+ getFileType: {
729
+ fileType: FileType;
730
+ };
731
+ getFileLength: {
732
+ fileLength: number;
733
+ };
734
+ getFileChecksum: {
735
+ fileChecksum: number;
736
+ };
737
+ fileTransferStatus: {
738
+ fileType: FileType;
739
+ fileTransferStatus: FileTransferStatus;
740
+ };
741
+ getFileBlock: {
742
+ fileTransferBlock: DataView;
743
+ };
744
+ fileTransferProgress: {
745
+ fileType: FileType;
746
+ progress: number;
747
+ };
748
+ fileTransferComplete: {
749
+ fileType: FileType;
750
+ direction: FileTransferDirection;
751
+ };
752
+ fileReceived: {
753
+ fileType: FileType;
754
+ file: File | Blob;
755
+ };
756
+ }
757
+
758
+ declare const DefaultNumberOfDisplayColors = 16;
759
+ declare const DisplayStatuses: readonly ["awake", "asleep"];
760
+ type DisplayStatus = (typeof DisplayStatuses)[number];
761
+ declare const DisplayTypes: readonly ["none", "generic", "monocularLeft", "monocularRight", "binocular"];
762
+ type DisplayType = (typeof DisplayTypes)[number];
763
+ declare const DisplayPixelDepths: readonly ["1", "2", "4"];
764
+ type DisplayPixelDepth = (typeof DisplayPixelDepths)[number];
765
+ declare const DisplayBrightnesses: readonly ["veryLow", "low", "medium", "high", "veryHigh"];
766
+ type DisplayBrightness = (typeof DisplayBrightnesses)[number];
767
+ type DisplaySize = {
768
+ width: number;
769
+ height: number;
770
+ };
771
+ type DisplayInformation = {
772
+ type: DisplayType;
773
+ width: number;
774
+ height: number;
775
+ pixelDepth: DisplayPixelDepth;
776
+ };
777
+ type DisplayBitmapColorPair = {
778
+ bitmapColorIndex: number;
779
+ colorIndex: number;
780
+ };
781
+ type DisplaySpriteColorPair = {
782
+ spriteColorIndex: number;
783
+ colorIndex: number;
784
+ };
785
+ type DisplayWireframeEdge = {
786
+ startIndex: number;
787
+ endIndex: number;
788
+ };
789
+ type DisplayWireframe = {
790
+ points: Vector2[];
791
+ edges: DisplayWireframeEdge[];
792
+ };
793
+ declare const DisplayBezierCurveTypes: readonly ["segment", "quadratic", "cubic"];
794
+ type DisplayBezierCurveType = (typeof DisplayBezierCurveTypes)[number];
795
+ type DisplayBezierCurve = {
796
+ type: DisplayBezierCurveType;
797
+ controlPoints: Vector2[];
798
+ };
799
+ interface DisplayEventMessages {
800
+ isDisplayAvailable: {
801
+ isDisplayAvailable: boolean;
802
+ };
803
+ displayStatus: {
804
+ displayStatus: DisplayStatus;
805
+ previousDisplayStatus: DisplayStatus;
806
+ };
807
+ displayInformation: {
808
+ displayInformation: DisplayInformation;
809
+ };
810
+ getDisplayBrightness: {
811
+ displayBrightness: DisplayBrightness;
812
+ };
813
+ displayContextState: {
814
+ displayContextState: DisplayContextState;
815
+ differences: DisplayContextStateKey[];
816
+ };
817
+ displayColor: {
818
+ colorIndex: number;
819
+ colorRGB: DisplayColorRGB;
820
+ colorHex: string;
821
+ };
822
+ displayColorOpacity: {
823
+ opacity: number;
824
+ colorIndex: number;
825
+ };
826
+ displayOpacity: {
827
+ opacity: number;
828
+ };
829
+ displayReady: {};
830
+ getSpriteSheetName: {
831
+ spriteSheetName: string;
832
+ };
833
+ displaySpriteSheetUploadStart: {
834
+ spriteSheetName: string;
835
+ spriteSheet: DisplaySpriteSheet;
836
+ };
837
+ displaySpriteSheetUploadProgress: {
838
+ spriteSheetName: string;
839
+ spriteSheet: DisplaySpriteSheet;
840
+ progress: number;
841
+ };
842
+ displaySpriteSheetUploadComplete: {
843
+ spriteSheetName: string;
844
+ spriteSheet: DisplaySpriteSheet;
845
+ };
846
+ }
847
+ declare const MinSpriteSheetNameLength = 1;
848
+ declare const MaxSpriteSheetNameLength = 30;
849
+ type DisplayBitmap = {
850
+ width: number;
851
+ height: number;
852
+ numberOfColors: number;
853
+ pixels: number[];
854
+ };
855
+
856
+ declare const maxDisplayScale = 50;
857
+ declare const DisplayCropDirections: readonly ["top", "right", "bottom", "left"];
858
+ type DisplayCropDirection = (typeof DisplayCropDirections)[number];
859
+ declare function pixelDepthToNumberOfColors(pixelDepth: DisplayPixelDepth): number;
860
+ declare const DisplayScaleDirections: readonly ["x", "y", "all"];
861
+ type DisplayScaleDirection = (typeof DisplayScaleDirections)[number];
862
+ type DisplayColorRGB = {
863
+ r: number;
864
+ g: number;
865
+ b: number;
866
+ };
867
+ declare const displayCurveTypeToNumberOfControlPoints: Record<DisplayBezierCurveType, number>;
868
+ declare function mergeWireframes(a: DisplayWireframe, b: DisplayWireframe): DisplayWireframe;
869
+ declare function intersectWireframes(a: DisplayWireframe, b: DisplayWireframe, ignoreDirection?: boolean): DisplayWireframe;
870
+
871
+ declare const MicrophoneCommands: readonly ["start", "stop", "vad"];
872
+ type MicrophoneCommand = (typeof MicrophoneCommands)[number];
873
+ declare const MicrophoneStatuses: readonly ["idle", "streaming", "vad"];
874
+ type MicrophoneStatus = (typeof MicrophoneStatuses)[number];
875
+ declare const MicrophoneConfigurationTypes: readonly ["sampleRate", "bitDepth"];
876
+ type MicrophoneConfigurationType = (typeof MicrophoneConfigurationTypes)[number];
877
+ declare const MicrophoneSampleRates: readonly ["8000", "16000"];
878
+ type MicrophoneSampleRate = (typeof MicrophoneSampleRates)[number];
879
+ declare const MicrophoneBitDepths: readonly ["8", "16"];
880
+ type MicrophoneBitDepth = (typeof MicrophoneBitDepths)[number];
881
+ type MicrophoneConfiguration = {
882
+ sampleRate?: MicrophoneSampleRate;
883
+ bitDepth?: MicrophoneBitDepth;
884
+ };
885
+ declare const MicrophoneConfigurationValues: {
886
+ sampleRate: readonly ["8000", "16000"];
887
+ bitDepth: readonly ["8", "16"];
888
+ };
889
+ interface MicrophoneEventMessages {
890
+ microphoneStatus: {
891
+ microphoneStatus: MicrophoneStatus;
892
+ previousMicrophoneStatus: MicrophoneStatus;
893
+ };
894
+ getMicrophoneConfiguration: {
895
+ microphoneConfiguration: MicrophoneConfiguration;
896
+ };
897
+ microphoneData: {
898
+ samples: Float32Array;
899
+ sampleRate: MicrophoneSampleRate;
900
+ bitDepth: MicrophoneBitDepth;
901
+ };
902
+ isRecordingMicrophone: {
903
+ isRecordingMicrophone: boolean;
904
+ };
905
+ microphoneRecording: {
906
+ samples: Float32Array;
907
+ sampleRate: MicrophoneSampleRate;
908
+ bitDepth: MicrophoneBitDepth;
909
+ blob: Blob;
910
+ url: string;
911
+ };
912
+ }
913
+
152
914
  declare const CameraCommands: readonly ["focus", "takePicture", "stop", "sleep", "wake"];
153
915
  type CameraCommand = (typeof CameraCommands)[number];
154
916
  declare const CameraStatuses: readonly ["idle", "focusing", "takingPicture", "asleep"];
@@ -184,8 +946,6 @@ interface CameraEventMessages {
184
946
  };
185
947
  }
186
948
 
187
- type FileLike = number[] | ArrayBuffer | DataView | URL | string | File;
188
-
189
949
  declare const FirmwareStatuses: readonly ["idle", "uploading", "uploaded", "pending", "testing", "erasing"];
190
950
  type FirmwareStatus = (typeof FirmwareStatuses)[number];
191
951
  interface FirmwareImage {
@@ -288,7 +1048,7 @@ interface BarometerSensorDataEventMessages {
288
1048
  };
289
1049
  }
290
1050
 
291
- declare const SensorTypes: readonly ["pressure", "acceleration", "gravity", "linearAcceleration", "gyroscope", "magnetometer", "gameRotation", "rotation", "orientation", "activity", "stepCounter", "stepDetector", "deviceOrientation", "tapDetector", "barometer", "camera"];
1051
+ declare const SensorTypes: readonly ["pressure", "acceleration", "gravity", "linearAcceleration", "gyroscope", "magnetometer", "gameRotation", "rotation", "orientation", "activity", "stepCounter", "stepDetector", "deviceOrientation", "tapDetector", "barometer", "camera", "microphone"];
292
1052
  type SensorType = (typeof SensorTypes)[number];
293
1053
  declare const ContinuousSensorTypes: readonly ["pressure", "acceleration", "gravity", "linearAcceleration", "gyroscope", "magnetometer", "gameRotation", "rotation", "orientation", "barometer"];
294
1054
  type ContinuousSensorType = (typeof ContinuousSensorTypes)[number];
@@ -303,49 +1063,6 @@ interface AnySensorDataEventMessages {
303
1063
  }
304
1064
  type SensorDataEventMessages = _SensorDataEventMessages & AnySensorDataEventMessages;
305
1065
 
306
- declare const FileTypes: readonly ["tflite", "wifiServerCert", "wifiServerKey"];
307
- type FileType = (typeof FileTypes)[number];
308
- declare const FileTransferStatuses: readonly ["idle", "sending", "receiving"];
309
- type FileTransferStatus = (typeof FileTransferStatuses)[number];
310
- declare const FileTransferDirections: readonly ["sending", "receiving"];
311
- type FileTransferDirection = (typeof FileTransferDirections)[number];
312
- interface FileConfiguration {
313
- file: FileLike;
314
- type: FileType;
315
- }
316
- interface FileTransferEventMessages {
317
- getFileTypes: {
318
- fileTypes: FileType[];
319
- };
320
- maxFileLength: {
321
- maxFileLength: number;
322
- };
323
- getFileType: {
324
- fileType: FileType;
325
- };
326
- getFileLength: {
327
- fileLength: number;
328
- };
329
- getFileChecksum: {
330
- fileChecksum: number;
331
- };
332
- fileTransferStatus: {
333
- fileTransferStatus: FileTransferStatus;
334
- };
335
- getFileBlock: {
336
- fileTransferBlock: DataView;
337
- };
338
- fileTransferProgress: {
339
- progress: number;
340
- };
341
- fileTransferComplete: {
342
- direction: FileTransferDirection;
343
- };
344
- fileReceived: {
345
- file: File | Blob;
346
- };
347
- }
348
-
349
1066
  declare const TfliteTasks: readonly ["classification", "regression"];
350
1067
  type TfliteTask = (typeof TfliteTasks)[number];
351
1068
  interface TfliteEventMessages {
@@ -484,9 +1201,9 @@ interface TxMessage {
484
1201
  type: TxRxMessageType;
485
1202
  data?: ArrayBuffer;
486
1203
  }
487
- declare const TxRxMessageTypes: readonly ["isCharging", "getBatteryCurrent", "getMtu", "getId", "getName", "setName", "getType", "setType", "getCurrentTime", "setCurrentTime", "getSensorConfiguration", "setSensorConfiguration", "getPressurePositions", "getSensorScalars", "sensorData", "getVibrationLocations", "triggerVibration", "getFileTypes", "maxFileLength", "getFileType", "setFileType", "getFileLength", "setFileLength", "getFileChecksum", "setFileChecksum", "setFileTransferCommand", "fileTransferStatus", "getFileBlock", "setFileBlock", "fileBytesTransferred", "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"];
1204
+ declare const TxRxMessageTypes: readonly ["isCharging", "getBatteryCurrent", "getMtu", "getId", "getName", "setName", "getType", "setType", "getCurrentTime", "setCurrentTime", "getSensorConfiguration", "setSensorConfiguration", "getPressurePositions", "getSensorScalars", "sensorData", "getVibrationLocations", "triggerVibration", "getFileTypes", "maxFileLength", "getFileType", "setFileType", "getFileLength", "setFileLength", "getFileChecksum", "setFileChecksum", "setFileTransferCommand", "fileTransferStatus", "getFileBlock", "setFileBlock", "fileBytesTransferred", "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", "microphoneStatus", "microphoneCommand", "getMicrophoneConfiguration", "setMicrophoneConfiguration", "microphoneData", "isDisplayAvailable", "displayStatus", "displayInformation", "displayCommand", "getDisplayBrightness", "setDisplayBrightness", "displayContextCommands", "displayReady", "getSpriteSheetName", "setSpriteSheetName", "spriteSheetIndex"];
488
1205
  type TxRxMessageType = (typeof TxRxMessageTypes)[number];
489
- declare const ConnectionMessageTypes: readonly ["batteryLevel", "manufacturerName", "modelNumber", "hardwareRevision", "firmwareRevision", "softwareRevision", "pnpId", "serialNumber", "rx", "tx", "isCharging", "getBatteryCurrent", "getMtu", "getId", "getName", "setName", "getType", "setType", "getCurrentTime", "setCurrentTime", "getSensorConfiguration", "setSensorConfiguration", "getPressurePositions", "getSensorScalars", "sensorData", "getVibrationLocations", "triggerVibration", "getFileTypes", "maxFileLength", "getFileType", "setFileType", "getFileLength", "setFileLength", "getFileChecksum", "setFileChecksum", "setFileTransferCommand", "fileTransferStatus", "getFileBlock", "setFileBlock", "fileBytesTransferred", "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", "smp"];
1206
+ declare const ConnectionMessageTypes: readonly ["batteryLevel", "manufacturerName", "modelNumber", "hardwareRevision", "firmwareRevision", "softwareRevision", "pnpId", "serialNumber", "rx", "tx", "isCharging", "getBatteryCurrent", "getMtu", "getId", "getName", "setName", "getType", "setType", "getCurrentTime", "setCurrentTime", "getSensorConfiguration", "setSensorConfiguration", "getPressurePositions", "getSensorScalars", "sensorData", "getVibrationLocations", "triggerVibration", "getFileTypes", "maxFileLength", "getFileType", "setFileType", "getFileLength", "setFileLength", "getFileChecksum", "setFileChecksum", "setFileTransferCommand", "fileTransferStatus", "getFileBlock", "setFileBlock", "fileBytesTransferred", "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", "microphoneStatus", "microphoneCommand", "getMicrophoneConfiguration", "setMicrophoneConfiguration", "microphoneData", "isDisplayAvailable", "displayStatus", "displayInformation", "displayCommand", "getDisplayBrightness", "setDisplayBrightness", "displayContextCommands", "displayReady", "getSpriteSheetName", "setSpriteSheetName", "spriteSheetIndex", "smp"];
490
1207
  type ConnectionMessageType = (typeof ConnectionMessageTypes)[number];
491
1208
  type ConnectionStatusCallback = (status: ConnectionStatus) => void;
492
1209
  type MessageReceivedCallback = (messageType: ConnectionMessageType, dataView: DataView) => void;
@@ -667,9 +1384,9 @@ interface WifiEventMessages {
667
1384
  };
668
1385
  }
669
1386
 
670
- 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"];
1387
+ 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", "isDisplayAvailable", "displayStatus", "displayInformation", "displayCommand", "getDisplayBrightness", "setDisplayBrightness", "displayContextCommands", "displayReady", "getSpriteSheetName", "setSpriteSheetName", "spriteSheetIndex", "displayContextState", "displayColor", "displayColorOpacity", "displayOpacity", "displaySpriteSheetUploadStart", "displaySpriteSheetUploadProgress", "displaySpriteSheetUploadComplete", "smp", "firmwareImages", "firmwareUploadProgress", "firmwareStatus", "firmwareUploadComplete"];
671
1388
  type DeviceEventType = (typeof DeviceEventTypes)[number];
672
- interface DeviceEventMessages extends ConnectionStatusEventMessages, DeviceInformationEventMessages, InformationEventMessages, SensorDataEventMessages, SensorConfigurationEventMessages, TfliteEventMessages, FileTransferEventMessages, WifiEventMessages, CameraEventMessages, FirmwareEventMessages {
1389
+ interface DeviceEventMessages extends ConnectionStatusEventMessages, DeviceInformationEventMessages, InformationEventMessages, SensorDataEventMessages, SensorConfigurationEventMessages, TfliteEventMessages, FileTransferEventMessages, WifiEventMessages, CameraEventMessages, MicrophoneEventMessages, DisplayEventMessages, FirmwareEventMessages {
673
1390
  batteryLevel: {
674
1391
  batteryLevel: number;
675
1392
  };
@@ -691,24 +1408,24 @@ declare class Device {
691
1408
  get bluetoothId(): string | undefined;
692
1409
  get isAvailable(): boolean | undefined;
693
1410
  constructor();
694
- get addEventListener(): <T extends "isWifiAvailable" | "getWifiSSID" | "setWifiSSID" | "getWifiPassword" | "setWifiPassword" | "getWifiConnectionEnabled" | "setWifiConnectionEnabled" | "isWifiConnected" | "ipAddress" | "isWifiSecure" | "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" | "cameraStatus" | "cameraCommand" | "getCameraConfiguration" | "setCameraConfiguration" | "cameraData" | "cameraImageProgress" | "cameraImage" | "smp" | "firmwareImages" | "firmwareUploadProgress" | "firmwareStatus" | "firmwareUploadComplete">(type: T, listener: (event: {
1411
+ 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" | "spriteSheetIndex" | "isConnected" | "connectionMessage" | "notConnected" | "connecting" | "connected" | "disconnecting" | "connectionStatus" | "rx" | "tx" | "batteryLevel" | "isDisplayAvailable" | "displayStatus" | "displayInformation" | "displayCommand" | "getDisplayBrightness" | "setDisplayBrightness" | "displayContextCommands" | "displayReady" | "getSpriteSheetName" | "setSpriteSheetName" | "displayContextState" | "displayColor" | "displayColorOpacity" | "displayOpacity" | "displaySpriteSheetUploadStart" | "displaySpriteSheetUploadProgress" | "displaySpriteSheetUploadComplete" | "smp" | "firmwareImages" | "firmwareUploadProgress" | "firmwareStatus" | "firmwareUploadComplete">(type: T, listener: (event: {
695
1412
  type: T;
696
1413
  target: Device;
697
1414
  message: DeviceEventMessages[T];
698
1415
  }) => void, options?: {
699
1416
  once?: boolean;
700
1417
  }) => void;
701
- get removeEventListener(): <T extends "isWifiAvailable" | "getWifiSSID" | "setWifiSSID" | "getWifiPassword" | "setWifiPassword" | "getWifiConnectionEnabled" | "setWifiConnectionEnabled" | "isWifiConnected" | "ipAddress" | "isWifiSecure" | "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" | "cameraStatus" | "cameraCommand" | "getCameraConfiguration" | "setCameraConfiguration" | "cameraData" | "cameraImageProgress" | "cameraImage" | "smp" | "firmwareImages" | "firmwareUploadProgress" | "firmwareStatus" | "firmwareUploadComplete">(type: T, listener: (event: {
1418
+ 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" | "spriteSheetIndex" | "isConnected" | "connectionMessage" | "notConnected" | "connecting" | "connected" | "disconnecting" | "connectionStatus" | "rx" | "tx" | "batteryLevel" | "isDisplayAvailable" | "displayStatus" | "displayInformation" | "displayCommand" | "getDisplayBrightness" | "setDisplayBrightness" | "displayContextCommands" | "displayReady" | "getSpriteSheetName" | "setSpriteSheetName" | "displayContextState" | "displayColor" | "displayColorOpacity" | "displayOpacity" | "displaySpriteSheetUploadStart" | "displaySpriteSheetUploadProgress" | "displaySpriteSheetUploadComplete" | "smp" | "firmwareImages" | "firmwareUploadProgress" | "firmwareStatus" | "firmwareUploadComplete">(type: T, listener: (event: {
702
1419
  type: T;
703
1420
  target: Device;
704
1421
  message: DeviceEventMessages[T];
705
1422
  }) => void) => void;
706
- get waitForEvent(): <T extends "isWifiAvailable" | "getWifiSSID" | "setWifiSSID" | "getWifiPassword" | "setWifiPassword" | "getWifiConnectionEnabled" | "setWifiConnectionEnabled" | "isWifiConnected" | "ipAddress" | "isWifiSecure" | "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" | "cameraStatus" | "cameraCommand" | "getCameraConfiguration" | "setCameraConfiguration" | "cameraData" | "cameraImageProgress" | "cameraImage" | "smp" | "firmwareImages" | "firmwareUploadProgress" | "firmwareStatus" | "firmwareUploadComplete">(type: T) => Promise<{
1423
+ 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" | "spriteSheetIndex" | "isConnected" | "connectionMessage" | "notConnected" | "connecting" | "connected" | "disconnecting" | "connectionStatus" | "rx" | "tx" | "batteryLevel" | "isDisplayAvailable" | "displayStatus" | "displayInformation" | "displayCommand" | "getDisplayBrightness" | "setDisplayBrightness" | "displayContextCommands" | "displayReady" | "getSpriteSheetName" | "setSpriteSheetName" | "displayContextState" | "displayColor" | "displayColorOpacity" | "displayOpacity" | "displaySpriteSheetUploadStart" | "displaySpriteSheetUploadProgress" | "displaySpriteSheetUploadComplete" | "smp" | "firmwareImages" | "firmwareUploadProgress" | "firmwareStatus" | "firmwareUploadComplete">(type: T) => Promise<{
707
1424
  type: T;
708
1425
  target: Device;
709
1426
  message: DeviceEventMessages[T];
710
1427
  }>;
711
- get removeEventListeners(): <T extends "isWifiAvailable" | "getWifiSSID" | "setWifiSSID" | "getWifiPassword" | "setWifiPassword" | "getWifiConnectionEnabled" | "setWifiConnectionEnabled" | "isWifiConnected" | "ipAddress" | "isWifiSecure" | "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" | "cameraStatus" | "cameraCommand" | "getCameraConfiguration" | "setCameraConfiguration" | "cameraData" | "cameraImageProgress" | "cameraImage" | "smp" | "firmwareImages" | "firmwareUploadProgress" | "firmwareStatus" | "firmwareUploadComplete">(type: T) => void;
1428
+ 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" | "spriteSheetIndex" | "isConnected" | "connectionMessage" | "notConnected" | "connecting" | "connected" | "disconnecting" | "connectionStatus" | "rx" | "tx" | "batteryLevel" | "isDisplayAvailable" | "displayStatus" | "displayInformation" | "displayCommand" | "getDisplayBrightness" | "setDisplayBrightness" | "displayContextCommands" | "displayReady" | "getSpriteSheetName" | "setSpriteSheetName" | "displayContextState" | "displayColor" | "displayColorOpacity" | "displayOpacity" | "displaySpriteSheetUploadStart" | "displaySpriteSheetUploadProgress" | "displaySpriteSheetUploadComplete" | "smp" | "firmwareImages" | "firmwareUploadProgress" | "firmwareStatus" | "firmwareUploadComplete">(type: T) => void;
712
1429
  get removeAllEventListeners(): () => void;
713
1430
  get connectionManager(): BaseConnectionManager | undefined;
714
1431
  set connectionManager(newConnectionManager: BaseConnectionManager | undefined);
@@ -747,7 +1464,7 @@ declare class Device {
747
1464
  get sensorTypes(): SensorType[];
748
1465
  get continuousSensorTypes(): ("pressure" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "barometer")[];
749
1466
  get sensorConfiguration(): SensorConfiguration;
750
- setSensorConfiguration(newSensorConfiguration: SensorConfiguration, clearRest?: boolean): Promise<void>;
1467
+ get setSensorConfiguration(): (newSensorConfiguration: SensorConfiguration, clearRest?: boolean, sendImmediately?: boolean) => Promise<void>;
751
1468
  clearSensorConfiguration(): Promise<void>;
752
1469
  static get ClearSensorConfigurationOnLeave(): boolean;
753
1470
  static set ClearSensorConfigurationOnLeave(newClearSensorConfigurationOnLeave: boolean);
@@ -757,9 +1474,9 @@ declare class Device {
757
1474
  resetPressureRange(): void;
758
1475
  get vibrationLocations(): ("front" | "rear")[];
759
1476
  triggerVibration(vibrationConfigurations: VibrationConfiguration[], sendImmediately?: boolean): Promise<void>;
760
- get fileTypes(): ("tflite" | "wifiServerCert" | "wifiServerKey")[];
1477
+ get fileTypes(): ("tflite" | "wifiServerCert" | "wifiServerKey" | "spriteSheet")[];
761
1478
  get maxFileLength(): number;
762
- get validFileTypes(): ("tflite" | "wifiServerCert" | "wifiServerKey")[];
1479
+ get validFileTypes(): ("tflite" | "wifiServerCert" | "wifiServerKey" | "spriteSheet")[];
763
1480
  sendFile(fileType: FileType, file: FileLike): Promise<void>;
764
1481
  receiveFile(fileType: FileType): Promise<void>;
765
1482
  get fileTransferStatus(): "idle" | "sending" | "receiving";
@@ -772,7 +1489,7 @@ declare class Device {
772
1489
  get tfliteSampleRate(): number;
773
1490
  get setTfliteSampleRate(): (newSampleRate: number, sendImmediately?: boolean) => Promise<void>;
774
1491
  get tfliteSensorTypes(): ("pressure" | "linearAcceleration" | "gyroscope" | "magnetometer")[];
775
- get allowedTfliteSensorTypes(): ("pressure" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "tapDetector" | "barometer" | "camera")[];
1492
+ get allowedTfliteSensorTypes(): ("pressure" | "acceleration" | "gravity" | "linearAcceleration" | "gyroscope" | "magnetometer" | "gameRotation" | "rotation" | "orientation" | "activity" | "stepCounter" | "stepDetector" | "deviceOrientation" | "tapDetector" | "barometer" | "camera" | "microphone")[];
776
1493
  get setTfliteSensorTypes(): (newSensorTypes: SensorType[], sendImmediately?: boolean) => Promise<void>;
777
1494
  get tfliteIsReady(): boolean;
778
1495
  get tfliteInferencingEnabled(): boolean;
@@ -815,8 +1532,8 @@ declare class Device {
815
1532
  reconnectViaUDP(): Promise<void>;
816
1533
  get hasCamera(): boolean;
817
1534
  get cameraStatus(): "idle" | "focusing" | "takingPicture" | "asleep";
818
- takePicture(): Promise<void>;
819
- focusCamera(): Promise<void>;
1535
+ takePicture(sensorRate?: number): Promise<void>;
1536
+ focusCamera(sensorRate?: number): Promise<void>;
820
1537
  stopCamera(): Promise<void>;
821
1538
  wakeCamera(): Promise<void>;
822
1539
  sleepCamera(): Promise<void>;
@@ -824,6 +1541,143 @@ declare class Device {
824
1541
  get availableCameraConfigurationTypes(): ("resolution" | "qualityFactor" | "shutter" | "gain" | "redGain" | "greenGain" | "blueGain")[];
825
1542
  get cameraConfigurationRanges(): CameraConfigurationRanges;
826
1543
  get setCameraConfiguration(): (newCameraConfiguration: CameraConfiguration) => Promise<void>;
1544
+ get hasMicrophone(): boolean;
1545
+ get microphoneStatus(): "idle" | "vad" | "streaming";
1546
+ startMicrophone(sensorRate?: number): Promise<void>;
1547
+ stopMicrophone(): Promise<void>;
1548
+ enableMicrophoneVad(): Promise<void>;
1549
+ toggleMicrophone(sensorRate?: number): Promise<void>;
1550
+ get microphoneConfiguration(): MicrophoneConfiguration;
1551
+ get availableMicrophoneConfigurationTypes(): ("sampleRate" | "bitDepth")[];
1552
+ get setMicrophoneConfiguration(): (newMicrophoneConfiguration: MicrophoneConfiguration) => Promise<void>;
1553
+ get audioContext(): AudioContext | undefined;
1554
+ set audioContext(newAudioContext: AudioContext | undefined);
1555
+ get microphoneMediaStreamDestination(): MediaStreamAudioDestinationNode;
1556
+ get microphoneGainNode(): GainNode;
1557
+ get isRecordingMicrophone(): boolean;
1558
+ startRecordingMicrophone(): void;
1559
+ stopRecordingMicrophone(): void;
1560
+ toggleMicrophoneRecording(): void;
1561
+ get isDisplayAvailable(): boolean;
1562
+ get isDisplayReady(): boolean;
1563
+ get displayContextState(): DisplayContextState;
1564
+ get displayColors(): string[];
1565
+ get displayBitmapColors(): string[];
1566
+ get displayBitmapColorIndices(): number[];
1567
+ get displayColorOpacities(): number[];
1568
+ get displayStatus(): "asleep" | "awake";
1569
+ get displayBrightness(): "veryLow" | "low" | "medium" | "high" | "veryHigh";
1570
+ get setDisplayBrightness(): (newDisplayBrightness: DisplayBrightness, sendImmediately?: boolean) => Promise<void>;
1571
+ get displayInformation(): DisplayInformation;
1572
+ get numberOfDisplayColors(): number;
1573
+ get wakeDisplay(): () => Promise<void>;
1574
+ get sleepDisplay(): () => Promise<void>;
1575
+ get toggleDisplay(): () => Promise<void>;
1576
+ get isDisplayAwake(): boolean;
1577
+ get showDisplay(): (sendImmediately?: boolean) => Promise<void>;
1578
+ get clearDisplay(): (sendImmediately?: boolean) => Promise<void>;
1579
+ get setDisplayColor(): (colorIndex: number, color: DisplayColorRGB | string, sendImmediately?: boolean) => Promise<void>;
1580
+ get setDisplayColorOpacity(): (colorIndex: number, opacity: number, sendImmediately?: boolean) => Promise<void>;
1581
+ get setDisplayOpacity(): (opacity: number, sendImmediately?: boolean) => Promise<void>;
1582
+ get saveDisplayContext(): (sendImmediately?: boolean) => Promise<void>;
1583
+ get restoreDisplayContext(): (sendImmediately?: boolean) => Promise<void>;
1584
+ get clearDisplayRect(): (x: number, y: number, width: number, height: number, sendImmediately?: boolean) => Promise<void>;
1585
+ get selectDisplayBackgroundColor(): (backgroundColorIndex: number, sendImmediately?: boolean) => Promise<void>;
1586
+ get selectDisplayFillColor(): (fillColorIndex: number, sendImmediately?: boolean) => Promise<void>;
1587
+ get selectDisplayLineColor(): (lineColorIndex: number, sendImmediately?: boolean) => Promise<void>;
1588
+ get setDisplayIgnoreFill(): (ignoreFill: boolean, sendImmediately?: boolean) => Promise<void>;
1589
+ get setDisplayIgnoreLine(): (ignoreLine: boolean, sendImmediately?: boolean) => Promise<void>;
1590
+ get setDisplayFillBackground(): (fillBackground: boolean, sendImmediately?: boolean) => Promise<void>;
1591
+ get setDisplayLineWidth(): (lineWidth: number, sendImmediately?: boolean) => Promise<void>;
1592
+ get setDisplayRotation(): (rotation: number, isRadians?: boolean, sendImmediately?: boolean) => Promise<void>;
1593
+ get clearDisplayRotation(): (sendImmediately?: boolean) => Promise<void>;
1594
+ get setDisplaySegmentStartCap(): (segmentStartCap: DisplaySegmentCap, sendImmediately?: boolean) => Promise<void>;
1595
+ get setDisplaySegmentEndCap(): (segmentEndCap: DisplaySegmentCap, sendImmediately?: boolean) => Promise<void>;
1596
+ get setDisplaySegmentCap(): (segmentCap: DisplaySegmentCap, sendImmediately?: boolean) => Promise<void>;
1597
+ get setDisplaySegmentStartRadius(): (segmentStartRadius: number, sendImmediately?: boolean) => Promise<void>;
1598
+ get setDisplaySegmentEndRadius(): (segmentEndRadius: number, sendImmediately?: boolean) => Promise<void>;
1599
+ get setDisplaySegmentRadius(): (segmentRadius: number, sendImmediately?: boolean) => Promise<void>;
1600
+ get setDisplayCropTop(): (cropTop: number, sendImmediately?: boolean) => Promise<void>;
1601
+ get setDisplayCropRight(): (cropRight: number, sendImmediately?: boolean) => Promise<void>;
1602
+ get setDisplayCropBottom(): (cropBottom: number, sendImmediately?: boolean) => Promise<void>;
1603
+ get setDisplayCropLeft(): (cropLeft: number, sendImmediately?: boolean) => Promise<void>;
1604
+ get setDisplayCrop(): (cropDirection: DisplayCropDirection, crop: number, sendImmediately?: boolean) => Promise<void>;
1605
+ get clearDisplayCrop(): (sendImmediately?: boolean) => Promise<void>;
1606
+ get setDisplayRotationCropTop(): (rotationCropTop: number, sendImmediately?: boolean) => Promise<void>;
1607
+ get setDisplayRotationCropRight(): (rotationCropRight: number, sendImmediately?: boolean) => Promise<void>;
1608
+ get setDisplayRotationCropBottom(): (rotationCropBottom: number, sendImmediately?: boolean) => Promise<void>;
1609
+ get setDisplayRotationCropLeft(): (rotationCropLeft: number, sendImmediately?: boolean) => Promise<void>;
1610
+ get setDisplayRotationCrop(): (cropDirection: DisplayCropDirection, crop: number, sendImmediately?: boolean) => Promise<void>;
1611
+ get clearDisplayRotationCrop(): (sendImmediately?: boolean) => Promise<void>;
1612
+ get flushDisplayContextCommands(): () => Promise<void>;
1613
+ get drawDisplayRect(): (offsetX: number, offsetY: number, width: number, height: number, sendImmediately?: boolean) => Promise<void>;
1614
+ get drawDisplayCircle(): (offsetX: number, offsetY: number, radius: number, sendImmediately?: boolean) => Promise<void>;
1615
+ get drawDisplayEllipse(): (offsetX: number, offsetY: number, radiusX: number, radiusY: number, sendImmediately?: boolean) => Promise<void>;
1616
+ get drawDisplayRoundRect(): (offsetX: number, offsetY: number, width: number, height: number, borderRadius: number, sendImmediately?: boolean) => Promise<void>;
1617
+ get drawDisplayRegularPolygon(): (offsetX: number, offsetY: number, radius: number, numberOfSides: number, sendImmediately?: boolean) => Promise<void>;
1618
+ get drawDisplayPolygon(): (points: Vector2[], sendImmediately?: boolean) => Promise<void>;
1619
+ get drawDisplayWireframe(): (wireframe: DisplayWireframe, sendImmediately?: boolean) => Promise<void>;
1620
+ get drawDisplaySegment(): (startX: number, startY: number, endX: number, endY: number, sendImmediately?: boolean) => Promise<void>;
1621
+ get drawDisplaySegments(): (points: Vector2[], sendImmediately?: boolean) => Promise<void>;
1622
+ get drawDisplayArc(): (offsetX: number, offsetY: number, radius: number, startAngle: number, angleOffset: number, isRadians?: boolean, sendImmediately?: boolean) => Promise<void>;
1623
+ get drawDisplayArcEllipse(): (offsetX: number, offsetY: number, radiusX: number, radiusY: number, startAngle: number, angleOffset: number, isRadians?: boolean, sendImmediately?: boolean) => Promise<void>;
1624
+ get drawDisplayBitmap(): (offsetX: number, offsetY: number, bitmap: DisplayBitmap, sendImmediately?: boolean) => Promise<void>;
1625
+ get imageToDisplayBitmap(): (image: HTMLImageElement, width: number, height: number, numberOfColors?: number) => Promise<{
1626
+ blob: Blob;
1627
+ bitmap: DisplayBitmap;
1628
+ }>;
1629
+ get quantizeDisplayImage(): (image: HTMLImageElement, width: number, height: number, numberOfColors: number) => Promise<{
1630
+ blob: Blob;
1631
+ colors: string[];
1632
+ colorIndices: number[];
1633
+ }>;
1634
+ get resizeAndQuantizeDisplayImage(): (image: HTMLImageElement, width: number, height: number, numberOfColors: number, colors?: string[]) => Promise<{
1635
+ blob: Blob;
1636
+ colors: string[];
1637
+ colorIndices: number[];
1638
+ }>;
1639
+ get setDisplayContextState(): (newState: PartialDisplayContextState, sendImmediately?: boolean) => Promise<void>;
1640
+ get selectDisplayBitmapColor(): (bitmapColorIndex: number, colorIndex: number, sendImmediately?: boolean) => Promise<void>;
1641
+ get selectDisplayBitmapColors(): (bitmapColorPairs: DisplayBitmapColorPair[], sendImmediately?: boolean) => Promise<void>;
1642
+ get setDisplayBitmapColor(): (bitmapColorIndex: number, color: DisplayColorRGB | string, sendImmediately?: boolean) => Promise<void>;
1643
+ get setDisplayBitmapColorOpacity(): (bitmapColorIndex: number, opacity: number, sendImmediately?: boolean) => Promise<void>;
1644
+ get setDisplayBitmapScaleDirection(): (direction: DisplayScaleDirection, bitmapScale: number, sendImmediately?: boolean) => Promise<void>;
1645
+ get setDisplayBitmapScaleX(): (bitmapScaleX: number, sendImmediately?: boolean) => Promise<void>;
1646
+ get setDisplayBitmapScaleY(): (bitmapScaleY: number, sendImmediately?: boolean) => Promise<void>;
1647
+ get setDisplayBitmapScale(): (bitmapScale: number, sendImmediately?: boolean) => Promise<void>;
1648
+ get resetDisplayBitmapScale(): (sendImmediately?: boolean) => Promise<void>;
1649
+ get selectDisplaySpriteColor(): (spriteColorIndex: number, colorIndex: number, sendImmediately?: boolean) => Promise<void>;
1650
+ get selectDisplaySpriteColors(): (spriteColorPairs: DisplaySpriteColorPair[], sendImmediately?: boolean) => Promise<void>;
1651
+ get setDisplaySpriteColor(): (spriteColorIndex: number, color: DisplayColorRGB | string, sendImmediately?: boolean) => Promise<void>;
1652
+ get setDisplaySpriteColorOpacity(): (spriteColorIndex: number, opacity: number, sendImmediately?: boolean) => Promise<void>;
1653
+ get resetDisplaySpriteColors(): (sendImmediately?: boolean) => Promise<void>;
1654
+ get setDisplaySpriteScaleDirection(): (direction: DisplayScaleDirection, spriteScale: number, sendImmediately?: boolean) => Promise<void>;
1655
+ get setDisplaySpriteScaleX(): (spriteScaleX: number, sendImmediately?: boolean) => Promise<void>;
1656
+ get setDisplaySpriteScaleY(): (spriteScaleY: number, sendImmediately?: boolean) => Promise<void>;
1657
+ get setDisplaySpriteScale(): (spriteScale: number, sendImmediately?: boolean) => Promise<void>;
1658
+ get resetDisplaySpriteScale(): (sendImmediately?: boolean) => Promise<void>;
1659
+ get displayManager(): DisplayManagerInterface;
1660
+ get uploadDisplaySpriteSheet(): (spriteSheet: DisplaySpriteSheet) => Promise<void>;
1661
+ get uploadDisplaySpriteSheets(): (spriteSheets: DisplaySpriteSheet[]) => Promise<void>;
1662
+ get selectDisplaySpriteSheet(): (spriteSheetName: string, sendImmediately?: boolean) => Promise<void>;
1663
+ get drawDisplaySprite(): (offsetX: number, offsetY: number, spriteName: string, sendImmediately?: boolean) => Promise<void>;
1664
+ get displaySpriteSheets(): Record<string, DisplaySpriteSheet>;
1665
+ get serializeDisplaySpriteSheet(): (spriteSheet: DisplaySpriteSheet) => ArrayBuffer;
1666
+ get setDisplayAlignment(): (alignmentDirection: DisplayAlignmentDirection, alignment: DisplayAlignment, sendImmediately?: boolean) => Promise<void>;
1667
+ get setDisplayVerticalAlignment(): (verticalAlignment: DisplayAlignment, sendImmediately?: boolean) => Promise<void>;
1668
+ get setDisplayHorizontalAlignment(): (horizontalAlignment: DisplayAlignment, sendImmediately?: boolean) => Promise<void>;
1669
+ get resetDisplayAlignment(): (sendImmediately?: boolean) => Promise<void>;
1670
+ get setDisplaySpritesDirection(): (spritesDirection: DisplayDirection, sendImmediately?: boolean) => Promise<void>;
1671
+ get setDisplaySpritesLineDirection(): (spritesLineDirection: DisplayDirection, sendImmediately?: boolean) => Promise<void>;
1672
+ get setDisplaySpritesSpacing(): (spritesSpacing: number, sendImmediately?: boolean) => Promise<void>;
1673
+ get setDisplaySpritesLineSpacing(): (spritesSpacing: number, sendImmediately?: boolean) => Promise<void>;
1674
+ get setDisplaySpritesAlignment(): (spritesAlignment: DisplayAlignment, sendImmediately?: boolean) => Promise<void>;
1675
+ get drawDisplayQuadraticBezierCurve(): (controlPoints: Vector2[], sendImmediately?: boolean) => Promise<void>;
1676
+ get drawDisplayQuadraticBezierCurves(): (controlPoints: Vector2[], sendImmediately?: boolean) => Promise<void>;
1677
+ get drawDisplayCubicBezierCurve(): (controlPoints: Vector2[], sendImmediately?: boolean) => Promise<void>;
1678
+ get drawDisplayCubicBezierCurves(): (controlPoints: Vector2[], sendImmediately?: boolean) => Promise<void>;
1679
+ get drawDisplayPath(): (curves: DisplayBezierCurve[], sendImmediately?: boolean) => Promise<void>;
1680
+ get drawDisplayClosedPath(): (curves: DisplayBezierCurve[], sendImmediately?: boolean) => Promise<void>;
827
1681
  }
828
1682
 
829
1683
  declare const DeviceManagerEventTypes: readonly ["deviceConnected", "deviceDisconnected", "deviceIsConnected", "availableDevices", "connectedDevices"];
@@ -866,24 +1720,29 @@ declare class DeviceManager {
866
1720
  * _only available on web-bluetooth enabled browsers_
867
1721
  */
868
1722
  GetDevices(): Promise<Device[] | undefined>;
869
- get AddEventListener(): <T extends "connectedDevices" | "deviceConnected" | "deviceIsConnected" | "deviceDisconnected" | "availableDevices">(type: T, listener: (event: {
1723
+ get AddEventListener(): <T extends "deviceIsConnected" | "deviceConnected" | "deviceDisconnected" | "availableDevices" | "connectedDevices">(type: T, listener: (event: {
870
1724
  type: T;
871
1725
  target: DeviceManager;
872
1726
  message: DeviceManagerEventMessages[T];
873
1727
  }) => void, options?: {
874
1728
  once?: boolean;
875
1729
  }) => void;
876
- get RemoveEventListener(): <T extends "connectedDevices" | "deviceConnected" | "deviceIsConnected" | "deviceDisconnected" | "availableDevices">(type: T, listener: (event: {
1730
+ get RemoveEventListener(): <T extends "deviceIsConnected" | "deviceConnected" | "deviceDisconnected" | "availableDevices" | "connectedDevices">(type: T, listener: (event: {
877
1731
  type: T;
878
1732
  target: DeviceManager;
879
1733
  message: DeviceManagerEventMessages[T];
880
1734
  }) => void) => void;
881
- get RemoveEventListeners(): <T extends "connectedDevices" | "deviceConnected" | "deviceIsConnected" | "deviceDisconnected" | "availableDevices">(type: T) => void;
1735
+ get RemoveEventListeners(): <T extends "deviceIsConnected" | "deviceConnected" | "deviceDisconnected" | "availableDevices" | "connectedDevices">(type: T) => void;
882
1736
  get RemoveAllEventListeners(): () => void;
883
1737
  _CheckDeviceAvailability(device: Device): void;
884
1738
  }
885
1739
  declare const _default: DeviceManager;
886
1740
 
1741
+ declare function wait(delay: number): Promise<unknown>;
1742
+
1743
+ declare function hexToRGB(hex: string): DisplayColorRGB;
1744
+ declare function rgbToHex({ r, g, b }: DisplayColorRGB): string;
1745
+
887
1746
  interface DevicePairPressureData {
888
1747
  sensors: {
889
1748
  [key in Side]: PressureSensorValue[];
@@ -936,24 +1795,24 @@ declare class DevicePair {
936
1795
  constructor(type: DevicePairType);
937
1796
  get sides(): readonly ["left", "right"];
938
1797
  get type(): "insoles" | "gloves";
939
- get addEventListener(): <T extends "isConnected" | "sensorData" | "pressure" | "deviceOrientation" | "deviceIsWifiAvailable" | "deviceGetWifiSSID" | "deviceGetWifiPassword" | "deviceIsWifiConnected" | "deviceIpAddress" | "deviceConnectionMessage" | "deviceNotConnected" | "deviceConnecting" | "deviceConnected" | "deviceDisconnecting" | "deviceConnectionStatus" | "deviceIsConnected" | "deviceBatteryLevel" | "deviceIsCharging" | "deviceGetBatteryCurrent" | "deviceGetMtu" | "deviceGetId" | "deviceGetName" | "deviceGetType" | "deviceGetCurrentTime" | "deviceManufacturerName" | "deviceModelNumber" | "deviceHardwareRevision" | "deviceFirmwareRevision" | "deviceSoftwareRevision" | "devicePnpId" | "deviceSerialNumber" | "deviceDeviceInformation" | "deviceGetSensorConfiguration" | "deviceSensorData" | "devicePressure" | "deviceAcceleration" | "deviceGravity" | "deviceLinearAcceleration" | "deviceGyroscope" | "deviceMagnetometer" | "deviceGameRotation" | "deviceRotation" | "deviceActivity" | "deviceStepCounter" | "deviceStepDetector" | "deviceDeviceOrientation" | "deviceTapDetector" | "deviceBarometer" | "deviceGetFileTypes" | "deviceMaxFileLength" | "deviceGetFileType" | "deviceGetFileLength" | "deviceGetFileChecksum" | "deviceFileTransferStatus" | "deviceGetFileBlock" | "deviceFileTransferProgress" | "deviceFileTransferComplete" | "deviceFileReceived" | "deviceGetTfliteName" | "deviceGetTfliteTask" | "deviceGetTfliteSampleRate" | "deviceGetTfliteSensorTypes" | "deviceTfliteIsReady" | "deviceGetTfliteCaptureDelay" | "deviceGetTfliteThreshold" | "deviceGetTfliteInferencingEnabled" | "deviceTfliteInference" | "deviceCameraStatus" | "deviceGetCameraConfiguration" | "deviceCameraImageProgress" | "deviceCameraImage" | "deviceSmp" | "deviceFirmwareImages" | "deviceFirmwareUploadProgress" | "deviceFirmwareStatus" | "deviceGetEnableWifiConnection">(type: T, listener: (event: {
1798
+ get addEventListener(): <T extends "pressure" | "deviceOrientation" | "sensorData" | "deviceIsConnected" | "deviceConnected" | "deviceNotConnected" | "isConnected" | "devicePressure" | "deviceGetFileTypes" | "deviceMaxFileLength" | "deviceGetFileType" | "deviceGetFileLength" | "deviceGetFileChecksum" | "deviceFileTransferStatus" | "deviceGetFileBlock" | "deviceFileTransferProgress" | "deviceFileTransferComplete" | "deviceFileReceived" | "deviceAcceleration" | "deviceGravity" | "deviceLinearAcceleration" | "deviceGyroscope" | "deviceMagnetometer" | "deviceGameRotation" | "deviceRotation" | "deviceActivity" | "deviceStepCounter" | "deviceStepDetector" | "deviceDeviceOrientation" | "deviceTapDetector" | "deviceBarometer" | "deviceCameraStatus" | "deviceGetCameraConfiguration" | "deviceCameraImageProgress" | "deviceCameraImage" | "deviceMicrophoneStatus" | "deviceGetMicrophoneConfiguration" | "deviceMicrophoneData" | "deviceIsRecordingMicrophone" | "deviceMicrophoneRecording" | "deviceSensorData" | "deviceGetSensorConfiguration" | "deviceGetTfliteName" | "deviceGetTfliteTask" | "deviceGetTfliteSampleRate" | "deviceGetTfliteSensorTypes" | "deviceTfliteIsReady" | "deviceGetTfliteCaptureDelay" | "deviceGetTfliteThreshold" | "deviceGetTfliteInferencingEnabled" | "deviceTfliteInference" | "deviceManufacturerName" | "deviceModelNumber" | "deviceHardwareRevision" | "deviceFirmwareRevision" | "deviceSoftwareRevision" | "devicePnpId" | "deviceSerialNumber" | "deviceDeviceInformation" | "deviceIsCharging" | "deviceGetBatteryCurrent" | "deviceGetMtu" | "deviceGetId" | "deviceGetName" | "deviceGetType" | "deviceGetCurrentTime" | "deviceIsWifiAvailable" | "deviceGetWifiSSID" | "deviceGetWifiPassword" | "deviceIsWifiConnected" | "deviceIpAddress" | "deviceConnectionMessage" | "deviceConnecting" | "deviceDisconnecting" | "deviceConnectionStatus" | "deviceBatteryLevel" | "deviceIsDisplayAvailable" | "deviceDisplayStatus" | "deviceDisplayInformation" | "deviceGetDisplayBrightness" | "deviceDisplayReady" | "deviceGetSpriteSheetName" | "deviceDisplayContextState" | "deviceDisplayColor" | "deviceDisplayColorOpacity" | "deviceDisplayOpacity" | "deviceDisplaySpriteSheetUploadStart" | "deviceDisplaySpriteSheetUploadProgress" | "deviceDisplaySpriteSheetUploadComplete" | "deviceSmp" | "deviceFirmwareImages" | "deviceFirmwareUploadProgress" | "deviceFirmwareStatus" | "deviceGetEnableWifiConnection">(type: T, listener: (event: {
940
1799
  type: T;
941
1800
  target: DevicePair;
942
1801
  message: DevicePairEventMessages[T];
943
1802
  }) => void, options?: {
944
1803
  once?: boolean;
945
1804
  }) => void;
946
- get removeEventListener(): <T extends "isConnected" | "sensorData" | "pressure" | "deviceOrientation" | "deviceIsWifiAvailable" | "deviceGetWifiSSID" | "deviceGetWifiPassword" | "deviceIsWifiConnected" | "deviceIpAddress" | "deviceConnectionMessage" | "deviceNotConnected" | "deviceConnecting" | "deviceConnected" | "deviceDisconnecting" | "deviceConnectionStatus" | "deviceIsConnected" | "deviceBatteryLevel" | "deviceIsCharging" | "deviceGetBatteryCurrent" | "deviceGetMtu" | "deviceGetId" | "deviceGetName" | "deviceGetType" | "deviceGetCurrentTime" | "deviceManufacturerName" | "deviceModelNumber" | "deviceHardwareRevision" | "deviceFirmwareRevision" | "deviceSoftwareRevision" | "devicePnpId" | "deviceSerialNumber" | "deviceDeviceInformation" | "deviceGetSensorConfiguration" | "deviceSensorData" | "devicePressure" | "deviceAcceleration" | "deviceGravity" | "deviceLinearAcceleration" | "deviceGyroscope" | "deviceMagnetometer" | "deviceGameRotation" | "deviceRotation" | "deviceActivity" | "deviceStepCounter" | "deviceStepDetector" | "deviceDeviceOrientation" | "deviceTapDetector" | "deviceBarometer" | "deviceGetFileTypes" | "deviceMaxFileLength" | "deviceGetFileType" | "deviceGetFileLength" | "deviceGetFileChecksum" | "deviceFileTransferStatus" | "deviceGetFileBlock" | "deviceFileTransferProgress" | "deviceFileTransferComplete" | "deviceFileReceived" | "deviceGetTfliteName" | "deviceGetTfliteTask" | "deviceGetTfliteSampleRate" | "deviceGetTfliteSensorTypes" | "deviceTfliteIsReady" | "deviceGetTfliteCaptureDelay" | "deviceGetTfliteThreshold" | "deviceGetTfliteInferencingEnabled" | "deviceTfliteInference" | "deviceCameraStatus" | "deviceGetCameraConfiguration" | "deviceCameraImageProgress" | "deviceCameraImage" | "deviceSmp" | "deviceFirmwareImages" | "deviceFirmwareUploadProgress" | "deviceFirmwareStatus" | "deviceGetEnableWifiConnection">(type: T, listener: (event: {
1805
+ get removeEventListener(): <T extends "pressure" | "deviceOrientation" | "sensorData" | "deviceIsConnected" | "deviceConnected" | "deviceNotConnected" | "isConnected" | "devicePressure" | "deviceGetFileTypes" | "deviceMaxFileLength" | "deviceGetFileType" | "deviceGetFileLength" | "deviceGetFileChecksum" | "deviceFileTransferStatus" | "deviceGetFileBlock" | "deviceFileTransferProgress" | "deviceFileTransferComplete" | "deviceFileReceived" | "deviceAcceleration" | "deviceGravity" | "deviceLinearAcceleration" | "deviceGyroscope" | "deviceMagnetometer" | "deviceGameRotation" | "deviceRotation" | "deviceActivity" | "deviceStepCounter" | "deviceStepDetector" | "deviceDeviceOrientation" | "deviceTapDetector" | "deviceBarometer" | "deviceCameraStatus" | "deviceGetCameraConfiguration" | "deviceCameraImageProgress" | "deviceCameraImage" | "deviceMicrophoneStatus" | "deviceGetMicrophoneConfiguration" | "deviceMicrophoneData" | "deviceIsRecordingMicrophone" | "deviceMicrophoneRecording" | "deviceSensorData" | "deviceGetSensorConfiguration" | "deviceGetTfliteName" | "deviceGetTfliteTask" | "deviceGetTfliteSampleRate" | "deviceGetTfliteSensorTypes" | "deviceTfliteIsReady" | "deviceGetTfliteCaptureDelay" | "deviceGetTfliteThreshold" | "deviceGetTfliteInferencingEnabled" | "deviceTfliteInference" | "deviceManufacturerName" | "deviceModelNumber" | "deviceHardwareRevision" | "deviceFirmwareRevision" | "deviceSoftwareRevision" | "devicePnpId" | "deviceSerialNumber" | "deviceDeviceInformation" | "deviceIsCharging" | "deviceGetBatteryCurrent" | "deviceGetMtu" | "deviceGetId" | "deviceGetName" | "deviceGetType" | "deviceGetCurrentTime" | "deviceIsWifiAvailable" | "deviceGetWifiSSID" | "deviceGetWifiPassword" | "deviceIsWifiConnected" | "deviceIpAddress" | "deviceConnectionMessage" | "deviceConnecting" | "deviceDisconnecting" | "deviceConnectionStatus" | "deviceBatteryLevel" | "deviceIsDisplayAvailable" | "deviceDisplayStatus" | "deviceDisplayInformation" | "deviceGetDisplayBrightness" | "deviceDisplayReady" | "deviceGetSpriteSheetName" | "deviceDisplayContextState" | "deviceDisplayColor" | "deviceDisplayColorOpacity" | "deviceDisplayOpacity" | "deviceDisplaySpriteSheetUploadStart" | "deviceDisplaySpriteSheetUploadProgress" | "deviceDisplaySpriteSheetUploadComplete" | "deviceSmp" | "deviceFirmwareImages" | "deviceFirmwareUploadProgress" | "deviceFirmwareStatus" | "deviceGetEnableWifiConnection">(type: T, listener: (event: {
947
1806
  type: T;
948
1807
  target: DevicePair;
949
1808
  message: DevicePairEventMessages[T];
950
1809
  }) => void) => void;
951
- get waitForEvent(): <T extends "isConnected" | "sensorData" | "pressure" | "deviceOrientation" | "deviceIsWifiAvailable" | "deviceGetWifiSSID" | "deviceGetWifiPassword" | "deviceIsWifiConnected" | "deviceIpAddress" | "deviceConnectionMessage" | "deviceNotConnected" | "deviceConnecting" | "deviceConnected" | "deviceDisconnecting" | "deviceConnectionStatus" | "deviceIsConnected" | "deviceBatteryLevel" | "deviceIsCharging" | "deviceGetBatteryCurrent" | "deviceGetMtu" | "deviceGetId" | "deviceGetName" | "deviceGetType" | "deviceGetCurrentTime" | "deviceManufacturerName" | "deviceModelNumber" | "deviceHardwareRevision" | "deviceFirmwareRevision" | "deviceSoftwareRevision" | "devicePnpId" | "deviceSerialNumber" | "deviceDeviceInformation" | "deviceGetSensorConfiguration" | "deviceSensorData" | "devicePressure" | "deviceAcceleration" | "deviceGravity" | "deviceLinearAcceleration" | "deviceGyroscope" | "deviceMagnetometer" | "deviceGameRotation" | "deviceRotation" | "deviceActivity" | "deviceStepCounter" | "deviceStepDetector" | "deviceDeviceOrientation" | "deviceTapDetector" | "deviceBarometer" | "deviceGetFileTypes" | "deviceMaxFileLength" | "deviceGetFileType" | "deviceGetFileLength" | "deviceGetFileChecksum" | "deviceFileTransferStatus" | "deviceGetFileBlock" | "deviceFileTransferProgress" | "deviceFileTransferComplete" | "deviceFileReceived" | "deviceGetTfliteName" | "deviceGetTfliteTask" | "deviceGetTfliteSampleRate" | "deviceGetTfliteSensorTypes" | "deviceTfliteIsReady" | "deviceGetTfliteCaptureDelay" | "deviceGetTfliteThreshold" | "deviceGetTfliteInferencingEnabled" | "deviceTfliteInference" | "deviceCameraStatus" | "deviceGetCameraConfiguration" | "deviceCameraImageProgress" | "deviceCameraImage" | "deviceSmp" | "deviceFirmwareImages" | "deviceFirmwareUploadProgress" | "deviceFirmwareStatus" | "deviceGetEnableWifiConnection">(type: T) => Promise<{
1810
+ get waitForEvent(): <T extends "pressure" | "deviceOrientation" | "sensorData" | "deviceIsConnected" | "deviceConnected" | "deviceNotConnected" | "isConnected" | "devicePressure" | "deviceGetFileTypes" | "deviceMaxFileLength" | "deviceGetFileType" | "deviceGetFileLength" | "deviceGetFileChecksum" | "deviceFileTransferStatus" | "deviceGetFileBlock" | "deviceFileTransferProgress" | "deviceFileTransferComplete" | "deviceFileReceived" | "deviceAcceleration" | "deviceGravity" | "deviceLinearAcceleration" | "deviceGyroscope" | "deviceMagnetometer" | "deviceGameRotation" | "deviceRotation" | "deviceActivity" | "deviceStepCounter" | "deviceStepDetector" | "deviceDeviceOrientation" | "deviceTapDetector" | "deviceBarometer" | "deviceCameraStatus" | "deviceGetCameraConfiguration" | "deviceCameraImageProgress" | "deviceCameraImage" | "deviceMicrophoneStatus" | "deviceGetMicrophoneConfiguration" | "deviceMicrophoneData" | "deviceIsRecordingMicrophone" | "deviceMicrophoneRecording" | "deviceSensorData" | "deviceGetSensorConfiguration" | "deviceGetTfliteName" | "deviceGetTfliteTask" | "deviceGetTfliteSampleRate" | "deviceGetTfliteSensorTypes" | "deviceTfliteIsReady" | "deviceGetTfliteCaptureDelay" | "deviceGetTfliteThreshold" | "deviceGetTfliteInferencingEnabled" | "deviceTfliteInference" | "deviceManufacturerName" | "deviceModelNumber" | "deviceHardwareRevision" | "deviceFirmwareRevision" | "deviceSoftwareRevision" | "devicePnpId" | "deviceSerialNumber" | "deviceDeviceInformation" | "deviceIsCharging" | "deviceGetBatteryCurrent" | "deviceGetMtu" | "deviceGetId" | "deviceGetName" | "deviceGetType" | "deviceGetCurrentTime" | "deviceIsWifiAvailable" | "deviceGetWifiSSID" | "deviceGetWifiPassword" | "deviceIsWifiConnected" | "deviceIpAddress" | "deviceConnectionMessage" | "deviceConnecting" | "deviceDisconnecting" | "deviceConnectionStatus" | "deviceBatteryLevel" | "deviceIsDisplayAvailable" | "deviceDisplayStatus" | "deviceDisplayInformation" | "deviceGetDisplayBrightness" | "deviceDisplayReady" | "deviceGetSpriteSheetName" | "deviceDisplayContextState" | "deviceDisplayColor" | "deviceDisplayColorOpacity" | "deviceDisplayOpacity" | "deviceDisplaySpriteSheetUploadStart" | "deviceDisplaySpriteSheetUploadProgress" | "deviceDisplaySpriteSheetUploadComplete" | "deviceSmp" | "deviceFirmwareImages" | "deviceFirmwareUploadProgress" | "deviceFirmwareStatus" | "deviceGetEnableWifiConnection">(type: T) => Promise<{
952
1811
  type: T;
953
1812
  target: DevicePair;
954
1813
  message: DevicePairEventMessages[T];
955
1814
  }>;
956
- get removeEventListeners(): <T extends "isConnected" | "sensorData" | "pressure" | "deviceOrientation" | "deviceIsWifiAvailable" | "deviceGetWifiSSID" | "deviceGetWifiPassword" | "deviceIsWifiConnected" | "deviceIpAddress" | "deviceConnectionMessage" | "deviceNotConnected" | "deviceConnecting" | "deviceConnected" | "deviceDisconnecting" | "deviceConnectionStatus" | "deviceIsConnected" | "deviceBatteryLevel" | "deviceIsCharging" | "deviceGetBatteryCurrent" | "deviceGetMtu" | "deviceGetId" | "deviceGetName" | "deviceGetType" | "deviceGetCurrentTime" | "deviceManufacturerName" | "deviceModelNumber" | "deviceHardwareRevision" | "deviceFirmwareRevision" | "deviceSoftwareRevision" | "devicePnpId" | "deviceSerialNumber" | "deviceDeviceInformation" | "deviceGetSensorConfiguration" | "deviceSensorData" | "devicePressure" | "deviceAcceleration" | "deviceGravity" | "deviceLinearAcceleration" | "deviceGyroscope" | "deviceMagnetometer" | "deviceGameRotation" | "deviceRotation" | "deviceActivity" | "deviceStepCounter" | "deviceStepDetector" | "deviceDeviceOrientation" | "deviceTapDetector" | "deviceBarometer" | "deviceGetFileTypes" | "deviceMaxFileLength" | "deviceGetFileType" | "deviceGetFileLength" | "deviceGetFileChecksum" | "deviceFileTransferStatus" | "deviceGetFileBlock" | "deviceFileTransferProgress" | "deviceFileTransferComplete" | "deviceFileReceived" | "deviceGetTfliteName" | "deviceGetTfliteTask" | "deviceGetTfliteSampleRate" | "deviceGetTfliteSensorTypes" | "deviceTfliteIsReady" | "deviceGetTfliteCaptureDelay" | "deviceGetTfliteThreshold" | "deviceGetTfliteInferencingEnabled" | "deviceTfliteInference" | "deviceCameraStatus" | "deviceGetCameraConfiguration" | "deviceCameraImageProgress" | "deviceCameraImage" | "deviceSmp" | "deviceFirmwareImages" | "deviceFirmwareUploadProgress" | "deviceFirmwareStatus" | "deviceGetEnableWifiConnection">(type: T) => void;
1815
+ get removeEventListeners(): <T extends "pressure" | "deviceOrientation" | "sensorData" | "deviceIsConnected" | "deviceConnected" | "deviceNotConnected" | "isConnected" | "devicePressure" | "deviceGetFileTypes" | "deviceMaxFileLength" | "deviceGetFileType" | "deviceGetFileLength" | "deviceGetFileChecksum" | "deviceFileTransferStatus" | "deviceGetFileBlock" | "deviceFileTransferProgress" | "deviceFileTransferComplete" | "deviceFileReceived" | "deviceAcceleration" | "deviceGravity" | "deviceLinearAcceleration" | "deviceGyroscope" | "deviceMagnetometer" | "deviceGameRotation" | "deviceRotation" | "deviceActivity" | "deviceStepCounter" | "deviceStepDetector" | "deviceDeviceOrientation" | "deviceTapDetector" | "deviceBarometer" | "deviceCameraStatus" | "deviceGetCameraConfiguration" | "deviceCameraImageProgress" | "deviceCameraImage" | "deviceMicrophoneStatus" | "deviceGetMicrophoneConfiguration" | "deviceMicrophoneData" | "deviceIsRecordingMicrophone" | "deviceMicrophoneRecording" | "deviceSensorData" | "deviceGetSensorConfiguration" | "deviceGetTfliteName" | "deviceGetTfliteTask" | "deviceGetTfliteSampleRate" | "deviceGetTfliteSensorTypes" | "deviceTfliteIsReady" | "deviceGetTfliteCaptureDelay" | "deviceGetTfliteThreshold" | "deviceGetTfliteInferencingEnabled" | "deviceTfliteInference" | "deviceManufacturerName" | "deviceModelNumber" | "deviceHardwareRevision" | "deviceFirmwareRevision" | "deviceSoftwareRevision" | "devicePnpId" | "deviceSerialNumber" | "deviceDeviceInformation" | "deviceIsCharging" | "deviceGetBatteryCurrent" | "deviceGetMtu" | "deviceGetId" | "deviceGetName" | "deviceGetType" | "deviceGetCurrentTime" | "deviceIsWifiAvailable" | "deviceGetWifiSSID" | "deviceGetWifiPassword" | "deviceIsWifiConnected" | "deviceIpAddress" | "deviceConnectionMessage" | "deviceConnecting" | "deviceDisconnecting" | "deviceConnectionStatus" | "deviceBatteryLevel" | "deviceIsDisplayAvailable" | "deviceDisplayStatus" | "deviceDisplayInformation" | "deviceGetDisplayBrightness" | "deviceDisplayReady" | "deviceGetSpriteSheetName" | "deviceDisplayContextState" | "deviceDisplayColor" | "deviceDisplayColorOpacity" | "deviceDisplayOpacity" | "deviceDisplaySpriteSheetUploadStart" | "deviceDisplaySpriteSheetUploadProgress" | "deviceDisplaySpriteSheetUploadComplete" | "deviceSmp" | "deviceFirmwareImages" | "deviceFirmwareUploadProgress" | "deviceFirmwareStatus" | "deviceGetEnableWifiConnection">(type: T) => void;
957
1816
  get removeAllEventListeners(): () => void;
958
1817
  get left(): Device | undefined;
959
1818
  get right(): Device | undefined;
@@ -1110,4 +1969,4 @@ declare const ThrottleUtils: {
1110
1969
  debounce: typeof debounce;
1111
1970
  };
1112
1971
 
1113
- export { type BoundDeviceEventListeners, type BoundDeviceManagerEventListeners, type BoundDevicePairEventListeners, type CameraCommand, CameraCommands, type CameraConfiguration, type CameraConfigurationType, CameraConfigurationTypes, type CenterOfPressure, type ContinuousSensorType, ContinuousSensorTypes, DefaultNumberOfPressureSensors, Device, type DeviceEvent, type DeviceEventListenerMap, type DeviceEventMap, type DeviceInformation, _default as DeviceManager, type DeviceManagerEvent, type DeviceManagerEventListenerMap, type DeviceManagerEventMap, DevicePair, type DevicePairEvent, type DevicePairEventListenerMap, type DevicePairEventMap, type DevicePairType, DevicePairTypes, type DeviceType, DeviceTypes, type DiscoveredDevice, environment_d as Environment, type Euler, EventUtils, type FileTransferDirection, FileTransferDirections, type FileType, FileTypes, MaxNameLength, MaxNumberOfVibrationWaveformEffectSegments, MaxNumberOfVibrationWaveformSegments, MaxSensorRate, MaxVibrationWaveformEffectSegmentDelay, MaxVibrationWaveformEffectSegmentLoopCount, MaxVibrationWaveformEffectSequenceLoopCount, MaxVibrationWaveformSegmentDuration, MaxWifiPasswordLength, MaxWifiSSIDLength, MinNameLength, MinWifiPasswordLength, MinWifiSSIDLength, type PressureData, type Quaternion, RangeHelper, scanner as Scanner, type SensorConfiguration, SensorRateStep, type SensorType, SensorTypes, type Side, Sides, type TfliteFileConfiguration, type TfliteSensorType, TfliteSensorTypes, type TfliteTask, TfliteTasks, ThrottleUtils, UDPServer, type Vector2, type Vector3, type VibrationConfiguration, type VibrationLocation, VibrationLocations, type VibrationType, VibrationTypes, type VibrationWaveformEffect, VibrationWaveformEffects, WebSocketServer, setAllConsoleLevelFlags, setConsoleLevelFlagsForType };
1972
+ export { type BoundDeviceEventListeners, type BoundDeviceManagerEventListeners, type BoundDevicePairEventListeners, type CameraCommand, CameraCommands, type CameraConfiguration, type CameraConfigurationType, CameraConfigurationTypes, type CenterOfPressure, type ContinuousSensorType, ContinuousSensorTypes, DefaultNumberOfDisplayColors, DefaultNumberOfPressureSensors, Device, type DeviceEvent, type DeviceEventListenerMap, type DeviceEventMap, type DeviceInformation, _default as DeviceManager, type DeviceManagerEvent, type DeviceManagerEventListenerMap, type DeviceManagerEventMap, DevicePair, type DevicePairEvent, type DevicePairEventListenerMap, type DevicePairEventMap, type DevicePairType, DevicePairTypes, type DeviceType, DeviceTypes, type DiscoveredDevice, type DisplayAlignment, DisplayAlignments, type DisplayBezierCurveType, DisplayBezierCurveTypes, type DisplayBitmap, type DisplayBitmapColorPair, type DisplayBrightness, DisplayBrightnesses, type DisplayColorRGB, type DisplayContextCommand, type DisplayContextCommandType, DisplayContextCommandTypes, type DisplayDirection, DisplayDirections, DisplayPixelDepths, type DisplaySegmentCap, DisplaySegmentCaps, type DisplaySize, type DisplaySprite, type DisplaySpriteColorPair, type DisplaySpriteContextCommandType, DisplaySpriteContextCommandTypes, type DisplaySpriteLine, type DisplaySpriteLines, type DisplaySpritePaletteSwap, type DisplaySpriteSheet, type DisplaySpriteSheetPalette, type DisplaySpriteSubLine, type DisplayWireframe, type DisplayWireframeEdge, environment_d as Environment, type Euler, EventUtils, type FileTransferDirection, FileTransferDirections, type FileType, FileTypes, MaxNameLength, MaxNumberOfVibrationWaveformEffectSegments, MaxNumberOfVibrationWaveformSegments, MaxSensorRate, MaxSpriteSheetNameLength, MaxVibrationWaveformEffectSegmentDelay, MaxVibrationWaveformEffectSegmentLoopCount, MaxVibrationWaveformEffectSequenceLoopCount, MaxVibrationWaveformSegmentDuration, MaxWifiPasswordLength, MaxWifiSSIDLength, type MicrophoneCommand, MicrophoneCommands, type MicrophoneConfiguration, type MicrophoneConfigurationType, MicrophoneConfigurationTypes, MicrophoneConfigurationValues, MinNameLength, MinSpriteSheetNameLength, MinWifiPasswordLength, MinWifiSSIDLength, type PressureData, type Quaternion, type Range, RangeHelper, scanner as Scanner, type SensorConfiguration, SensorRateStep, type SensorType, SensorTypes, type Side, Sides, type TfliteFileConfiguration, type TfliteSensorType, TfliteSensorTypes, type TfliteTask, TfliteTasks, ThrottleUtils, UDPServer, type Vector2, type Vector3, type VibrationConfiguration, type VibrationLocation, VibrationLocations, type VibrationType, VibrationTypes, type VibrationWaveformEffect, VibrationWaveformEffects, WebSocketServer, displayCurveTypeToNumberOfControlPoints, fontToSpriteSheet, getFontUnicodeRange, hexToRGB, intersectWireframes, maxDisplayScale, mergeWireframes, parseFont, pixelDepthToNumberOfColors, rgbToHex, setAllConsoleLevelFlags, setConsoleLevelFlagsForType, stringToSprites, wait };