import { FakeEventMarkerEmitter } from '@neurodevs/node-lsl'; import { FakeXdfRecorder } from '@neurodevs/node-xdf'; import { DeviceFactory, DeviceName, PerDeviceOptions, DeviceSpecification, SessionOptions, SingleDeviceBundle, MultipleDeviceBundle } from '../../impl/BiosensorDeviceFactory.js'; import FakeDeviceController from '../devices/FakeDeviceController.js'; import FakeWebSocketGateway from '../WebSocketGateway/FakeWebSocketGateway.js'; export default class FakeDeviceFactory implements DeviceFactory { static numCallsToConstructor: number; static callsToCreateDevice: { deviceName: DeviceName; options?: PerDeviceOptions & SessionOptions; }[]; static callsToCreateDevices: { deviceSpecifications: DeviceSpecification[]; sessionOptions?: SessionOptions; }[]; static fakeDevice: FakeDeviceController; static fakeRecorder: FakeXdfRecorder; static fakeGateway: FakeWebSocketGateway; static fakeEmitter: FakeEventMarkerEmitter; constructor(); createDevice(deviceName: DeviceName, options?: PerDeviceOptions & SessionOptions): Promise; createDevices(deviceSpecifications: DeviceSpecification[], sessionOptions?: SessionOptions): Promise; get fakeDevice(): FakeDeviceController; get fakeRecorder(): FakeXdfRecorder; get fakeGateway(): FakeWebSocketGateway; get fakeEmitter(): FakeEventMarkerEmitter; static resetTestDouble(): void; }