@neurodevs/node-lsl 22.1.0 → 23.1.0

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.
@@ -3,9 +3,7 @@ export default class BleObserverControllerTest extends AbstractPackageTest {
3
3
  private static instance;
4
4
  private static passedAdvertisements;
5
5
  private static readonly fakeError;
6
- private static readonly data;
7
- private static readonly length;
8
- private static readonly timestampSec;
6
+ private static readonly advertisement;
9
7
  protected static beforeEach(): Promise<void>;
10
8
  protected static createsInstance(): Promise<void>;
11
9
  protected static startObservingCreatesBleObserverBackend(): Promise<void>;
@@ -4,17 +4,26 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
+ import { randomInt } from 'node:crypto';
8
+ import { FakeLibndx } from '@neurodevs/ndx-native';
7
9
  import { test, assert } from '@neurodevs/node-tdd';
8
- import BleObserverController from '../../impl/controllers/BleObserverController.js';
9
10
  import AbstractPackageTest from '../AbstractPackageTest.js';
10
- import { FakeLibndx } from '@neurodevs/ndx-native';
11
+ import BleObserverController from '../../impl/controllers/BleObserverController.js';
11
12
  export default class BleObserverControllerTest extends AbstractPackageTest {
12
13
  static instance;
13
14
  static passedAdvertisements;
14
15
  static fakeError = this.generateId();
15
- static data = Buffer.from([0x01, 0x02, 0x03]);
16
- static length = 3;
17
- static timestampSec = 1234.5;
16
+ static advertisement = {
17
+ localName: this.generateId(),
18
+ companyId: randomInt(0, 65535),
19
+ manufacturerData: this.generateId().slice(0, 8),
20
+ serviceUuids: [],
21
+ serviceData: {},
22
+ rssi: null,
23
+ txPowerLevel: null,
24
+ isConnectable: true,
25
+ timestampSec: 1234.5,
26
+ };
18
27
  static async beforeEach() {
19
28
  await super.beforeEach();
20
29
  this.passedAdvertisements = [];
@@ -37,12 +46,8 @@ export default class BleObserverControllerTest extends AbstractPackageTest {
37
46
  }
38
47
  static async passesExpectedArgsToOnAdvertisement() {
39
48
  await this.startObserving();
40
- FakeLibndx.callsToStartBleObserver[0]?.onAdvertisement(this.data, this.length, this.timestampSec);
41
- assert.isEqualDeep(this.passedAdvertisements[0], {
42
- data: this.data,
43
- length: this.length,
44
- timestampSec: this.timestampSec,
45
- }, 'Did not pass expected args to onAdvertisement!');
49
+ FakeLibndx.callsToStartBleObserver[0]?.onAdvertisement(this.advertisement);
50
+ assert.isEqualDeep(this.passedAdvertisements[0], this.advertisement, 'Did not pass expected args to onAdvertisement!');
46
51
  }
47
52
  static async stopObservingStopsBleObserverBackend() {
48
53
  await this.stopObserving();
@@ -79,8 +84,8 @@ export default class BleObserverControllerTest extends AbstractPackageTest {
79
84
  static BleObserverController() {
80
85
  return BleObserverController.Create({
81
86
  deviceUuid: this.deviceUuid,
82
- onAdvertisement: (data, length, timestampSec) => {
83
- this.passedAdvertisements.push({ data, length, timestampSec });
87
+ onAdvertisement: (advertisement) => {
88
+ this.passedAdvertisements.push(advertisement);
84
89
  },
85
90
  });
86
91
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BleObserverController.test.js","sourceRoot":"","sources":["../../../src/__tests__/impl/BleObserverController.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BleObserverController.test.js","sourceRoot":"","sources":["../../../src/__tests__/impl/BleObserverController.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"LslEventMarkerOutlet.js","sourceRoot":"","sources":["../../src/impl/LslEventMarkerOutlet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAExD,OAAO,eAGN,MAAM,sBAAsB,CAAA;AAE7B,MAAM,CAAC,OAAO,OAAO,oBAAoB;IAC9B,MAAM,CAAC,KAAK,CAA+B;IAExC,MAAM,CAAW;IACnB,SAAS,GAAG,KAAK,CAAA;IACjB,WAAW,CAAa;IACxB,OAAO,CAAM;IAErB,YAAsB,MAAiB;QACnC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACxB,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAkC;QACzD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,CAAA;IAC3C,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,UAAkB,EAAE,OAAqB;QACvD,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAA;QAClC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QAErB,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;QAErC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAA;QAEnC,IAAI,WAAW,EAAE,CAAC;YACd,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAChC,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;IAC1B,CAAC;IAEO,qBAAqB,CAAC,UAAkB;QAC5C,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,eAAe,UAAU,yBAAyB,CAAC,CAAA;QACvE,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,OAA2B;QAC7C,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAA;QACtC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QAErB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,MAAM,CAAA;YACpC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;YAE7B,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAE5B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBAClB,OAAM;YACV,CAAC;QACL,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;IAC1B,CAAC;IAEO,kBAAkB,CAAC,UAAkB;QACzC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,UAAU,CAAC,CAAC,CAAA;IACxC,CAAC;IAES,KAAK,CAAC,IAAI,CAAC,KAAa;QAC9B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;IACpE,CAAC;IAEO,UAAU,CAAC,OAAiC,EAAE,WAAmB;QACrE,IAAI,CAAC,WAAW,GAAG,OAAc,CAAA;QACjC,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;IACnD,CAAC;IAEM,SAAS;QACZ,IAAI,CAAC,WAAW,EAAE,EAAE,CAAA;QACpB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC1B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;IAC1B,CAAC;IAEM,OAAO;QACV,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,SAAS,EAAE,CAAA;QACpB,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAA;IACzB,CAAC;IAEO,MAAM,CAAC,4BAA4B;QACvC,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAA;QAElC,MAAM,IAAI,GAAG,kBAAkB,QAAQ,GAAG,CAAA;QAC1C,MAAM,QAAQ,GAAG,iBAAiB,QAAQ,EAAE,CAAA;QAE5C,OAAO;YACH,IAAI;YACJ,IAAI,EAAE,SAAS;YACf,QAAQ;YACR,YAAY,EAAE,CAAC,SAAS,CAAC;YACzB,aAAa,EAAE,QAAQ;YACvB,YAAY,EAAE,CAAC;YACf,SAAS,EAAE,CAAC;SACK,CAAA;IACzB,CAAC;IAEO,MAAM,CAAC,eAAe,CAAC,OAAmC;QAC9D,OAAO,eAAe,CAAC,MAAM,CAAC;YAC1B,GAAG,IAAI,CAAC,4BAA4B,EAAE;YACtC,GAAG,OAAO;SACb,CAAC,CAAA;IACN,CAAC;CACJ"}
1
+ {"version":3,"file":"LslEventMarkerOutlet.js","sourceRoot":"","sources":["../../src/impl/LslEventMarkerOutlet.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { NativeAdvertisement } from '@neurodevs/ndx-native';
1
2
  export default class BleObserverController implements BleObserver {
2
3
  static Class?: BleObserverConstructor;
3
4
  private readonly deviceUuid;
@@ -21,4 +22,5 @@ export type BleObserverOptions = {
21
22
  deviceUuid: string;
22
23
  onAdvertisement?: OnAdvertisement;
23
24
  };
24
- export type OnAdvertisement = (data: Buffer, length: number, timestampSec: number) => void;
25
+ export type BleAdvertisement = NativeAdvertisement;
26
+ export type OnAdvertisement = (advertisement: BleAdvertisement) => void;
@@ -25,8 +25,8 @@ export default class BleObserverController {
25
25
  startBleObserverBackend() {
26
26
  const { status, error } = this.ndx.startBleObserverBackend({
27
27
  deviceUuid: this.deviceUuid,
28
- onAdvertisement: (data, length, timestampSec) => {
29
- this.onAdvertisement?.(data, length, timestampSec);
28
+ onAdvertisement: (advertisement) => {
29
+ this.onAdvertisement?.(advertisement);
30
30
  },
31
31
  });
32
32
  this.throwIfError(status, error);
@@ -1 +1 @@
1
- {"version":3,"file":"BleObserverController.js","sourceRoot":"","sources":["../../../src/impl/controllers/BleObserverController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAErD,MAAM,CAAC,OAAO,OAAO,qBAAqB;IAC/B,MAAM,CAAC,KAAK,CAAyB;IAE3B,UAAU,CAAQ;IAClB,eAAe,CAAkB;IACjC,GAAG,GAAG,aAAa,CAAC,WAAW,EAAE,CAAA;IAElD,YAAsB,OAA2B;QAC7C,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,GAAG,OAAO,CAAA;QAE/C,IAAI,CAAC,UAAU,GAAG,UAAU,IAAI,EAAE,CAAA;QAClC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;IAC1C,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,OAA2B;QAC5C,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,CAAA;IAC5C,CAAC;IAEM,KAAK,CAAC,cAAc;QACvB,IAAI,CAAC,wBAAwB,EAAE,CAAA;QAC/B,IAAI,CAAC,uBAAuB,EAAE,CAAA;IAClC,CAAC;IAEO,wBAAwB;QAC5B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,wBAAwB,CAAC;YACxD,UAAU,EAAE,IAAI,CAAC,UAAU;SAC9B,CAAC,CAAA;QAEF,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IACpC,CAAC;IAEO,uBAAuB;QAC3B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,uBAAuB,CAAC;YACvD,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,eAAe,EAAE,CACb,IAAY,EACZ,MAAc,EACd,YAAoB,EACtB,EAAE;gBACA,IAAI,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,CAAA;YACtD,CAAC;SACJ,CAAC,CAAA;QAEF,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IACpC,CAAC;IAEM,KAAK,CAAC,aAAa;QACtB,IAAI,CAAC,sBAAsB,EAAE,CAAA;IACjC,CAAC;IAEO,sBAAsB;QAC1B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC;YACtD,UAAU,EAAE,IAAI,CAAC,UAAU;SAC9B,CAAC,CAAA;QAEF,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IACpC,CAAC;IAEO,YAAY,CAAC,MAAc,EAAE,KAAyB;QAC1D,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,WAAW,KAAK,IAAI,eAAe,EAAE,CAAC,CAAA;QACnE,CAAC;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"BleObserverController.js","sourceRoot":"","sources":["../../../src/impl/controllers/BleObserverController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAuB,MAAM,uBAAuB,CAAA;AAE1E,MAAM,CAAC,OAAO,OAAO,qBAAqB;IAC/B,MAAM,CAAC,KAAK,CAAyB;IAE3B,UAAU,CAAQ;IAClB,eAAe,CAAkB;IACjC,GAAG,GAAG,aAAa,CAAC,WAAW,EAAE,CAAA;IAElD,YAAsB,OAA2B;QAC7C,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,GAAG,OAAO,CAAA;QAE/C,IAAI,CAAC,UAAU,GAAG,UAAU,IAAI,EAAE,CAAA;QAClC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;IAC1C,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,OAA2B;QAC5C,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,CAAA;IAC5C,CAAC;IAEM,KAAK,CAAC,cAAc;QACvB,IAAI,CAAC,wBAAwB,EAAE,CAAA;QAC/B,IAAI,CAAC,uBAAuB,EAAE,CAAA;IAClC,CAAC;IAEO,wBAAwB;QAC5B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,wBAAwB,CAAC;YACxD,UAAU,EAAE,IAAI,CAAC,UAAU;SAC9B,CAAC,CAAA;QAEF,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IACpC,CAAC;IAEO,uBAAuB;QAC3B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,uBAAuB,CAAC;YACvD,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,eAAe,EAAE,CAAC,aAAkC,EAAE,EAAE;gBACpD,IAAI,CAAC,eAAe,EAAE,CAAC,aAAa,CAAC,CAAA;YACzC,CAAC;SACJ,CAAC,CAAA;QAEF,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IACpC,CAAC;IAEM,KAAK,CAAC,aAAa;QACtB,IAAI,CAAC,sBAAsB,EAAE,CAAA;IACjC,CAAC;IAEO,sBAAsB;QAC1B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC;YACtD,UAAU,EAAE,IAAI,CAAC,UAAU;SAC9B,CAAC,CAAA;QAEF,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IACpC,CAAC;IAEO,YAAY,CAAC,MAAc,EAAE,KAAyB;QAC1D,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,WAAW,KAAK,IAAI,eAAe,EAAE,CAAC,CAAA;QACnE,CAAC;IACL,CAAC;CACJ"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neurodevs/node-lsl",
3
- "version": "22.1.0",
3
+ "version": "23.1.0",
4
4
  "description": "Lab Streaming Layer (LSL) bindings for Node",
5
5
  "type": "module",
6
6
  "keywords": [
@@ -42,12 +42,12 @@
42
42
  },
43
43
  "dependencies": {
44
44
  "@neurodevs/generate-id": "^1.1.3",
45
- "@neurodevs/ndx-native": "^8.0.0",
45
+ "@neurodevs/ndx-native": "^9.0.0",
46
46
  "ffi-rs": "^1.3.1",
47
47
  "ws": "^8.18.3"
48
48
  },
49
49
  "devDependencies": {
50
- "@neurodevs/eslint-config-ndx": "^1.0.2",
50
+ "@neurodevs/eslint-config-ndx": "2.0.0",
51
51
  "@neurodevs/node-tdd": "^3.0.3",
52
52
  "@neurodevs/prettier-config-ndx": "^1.0.2",
53
53
  "@types/ws": "^8.18.1",
@@ -1,20 +1,30 @@
1
+ import { randomInt } from 'node:crypto'
2
+
3
+ import { FakeLibndx, NativeAdvertisement } from '@neurodevs/ndx-native'
1
4
  import { test, assert } from '@neurodevs/node-tdd'
2
5
 
6
+ import AbstractPackageTest from '../AbstractPackageTest.js'
3
7
  import BleObserverController, {
4
8
  BleObserver,
5
9
  } from '../../impl/controllers/BleObserverController.js'
6
- import AbstractPackageTest from '../AbstractPackageTest.js'
7
- import { FakeLibndx } from '@neurodevs/ndx-native'
8
10
 
9
11
  export default class BleObserverControllerTest extends AbstractPackageTest {
10
12
  private static instance: BleObserver
11
- private static passedAdvertisements: PassedAdvertisement[]
13
+ private static passedAdvertisements: NativeAdvertisement[]
12
14
 
13
15
  private static readonly fakeError = this.generateId()
14
16
 
15
- private static readonly data = Buffer.from([0x01, 0x02, 0x03])
16
- private static readonly length = 3
17
- private static readonly timestampSec = 1234.5
17
+ private static readonly advertisement: NativeAdvertisement = {
18
+ localName: this.generateId(),
19
+ companyId: randomInt(0, 65535),
20
+ manufacturerData: this.generateId().slice(0, 8),
21
+ serviceUuids: [],
22
+ serviceData: {},
23
+ rssi: null,
24
+ txPowerLevel: null,
25
+ isConnectable: true,
26
+ timestampSec: 1234.5,
27
+ }
18
28
 
19
29
  protected static async beforeEach() {
20
30
  await super.beforeEach()
@@ -61,18 +71,12 @@ export default class BleObserverControllerTest extends AbstractPackageTest {
61
71
  await this.startObserving()
62
72
 
63
73
  FakeLibndx.callsToStartBleObserver[0]?.onAdvertisement(
64
- this.data,
65
- this.length,
66
- this.timestampSec
74
+ this.advertisement
67
75
  )
68
76
 
69
77
  assert.isEqualDeep(
70
78
  this.passedAdvertisements[0],
71
- {
72
- data: this.data,
73
- length: this.length,
74
- timestampSec: this.timestampSec,
75
- },
79
+ this.advertisement,
76
80
  'Did not pass expected args to onAdvertisement!'
77
81
  )
78
82
  }
@@ -140,19 +144,9 @@ export default class BleObserverControllerTest extends AbstractPackageTest {
140
144
  private static BleObserverController() {
141
145
  return BleObserverController.Create({
142
146
  deviceUuid: this.deviceUuid,
143
- onAdvertisement: (
144
- data: Buffer,
145
- length: number,
146
- timestampSec: number
147
- ) => {
148
- this.passedAdvertisements.push({ data, length, timestampSec })
147
+ onAdvertisement: (advertisement: NativeAdvertisement) => {
148
+ this.passedAdvertisements.push(advertisement)
149
149
  },
150
150
  })
151
151
  }
152
152
  }
153
-
154
- type PassedAdvertisement = {
155
- data: Buffer
156
- length: number
157
- timestampSec: number
158
- }
@@ -99,7 +99,7 @@ export default class LslEventMarkerOutlet implements EventMarkerOutlet {
99
99
  channelFormat: 'string',
100
100
  sampleRateHz: 0,
101
101
  chunkSize: 1,
102
- } as LslOutletOptions
102
+ } satisfies LslOutletOptions
103
103
  }
104
104
 
105
105
  private static LslStreamOutlet(options?: Partial<LslOutletOptions>) {
@@ -1,4 +1,4 @@
1
- import { LibndxAdapter } from '@neurodevs/ndx-native'
1
+ import { LibndxAdapter, NativeAdvertisement } from '@neurodevs/ndx-native'
2
2
 
3
3
  export default class BleObserverController implements BleObserver {
4
4
  public static Class?: BleObserverConstructor
@@ -34,12 +34,8 @@ export default class BleObserverController implements BleObserver {
34
34
  private startBleObserverBackend() {
35
35
  const { status, error } = this.ndx.startBleObserverBackend({
36
36
  deviceUuid: this.deviceUuid,
37
- onAdvertisement: (
38
- data: Buffer,
39
- length: number,
40
- timestampSec: number
41
- ) => {
42
- this.onAdvertisement?.(data, length, timestampSec)
37
+ onAdvertisement: (advertisement: NativeAdvertisement) => {
38
+ this.onAdvertisement?.(advertisement)
43
39
  },
44
40
  })
45
41
 
@@ -78,8 +74,6 @@ export type BleObserverOptions = {
78
74
  onAdvertisement?: OnAdvertisement
79
75
  }
80
76
 
81
- export type OnAdvertisement = (
82
- data: Buffer,
83
- length: number,
84
- timestampSec: number
85
- ) => void
77
+ export type BleAdvertisement = NativeAdvertisement
78
+
79
+ export type OnAdvertisement = (advertisement: BleAdvertisement) => void