import fs from 'node:fs'; import { BleController, CharacteristicCallbacks } from '@neurodevs/node-lsl'; import { XdfRecorder } from '@neurodevs/node-xdf'; import { DeviceControllerBle, DeviceControllerBleOptions } from '../BiosensorDeviceFactory.js'; import AbstractDeviceControllerBle from './AbstractDeviceControllerBle.js'; export declare const CONTROL_UUID = "273E0001-4C4D-454D-96BE-F03BAC821358"; export default class MuseDeviceController extends AbstractDeviceControllerBle implements DeviceControllerBle { static Class?: MuseDeviceControllerConstructor; static createWriteStream: typeof fs.createWriteStream; static log: (...data: any[]) => void; private readonly variant; protected constructor(variant: MuseVariant, ble: BleController, recorder?: XdfRecorder); static Create(options?: MuseControllerOptions): Promise; protected get deviceId(): string; protected handleStartStreaming(): Promise; protected handleStopStreaming(): Promise; get streamQueries(): string[]; private static BleDeviceController; private static XdfStreamRecorder; } export interface MuseVariant { readonly charCallbacks: CharacteristicCallbacks; readonly streamQueries: string[]; readonly startCommands: string[]; } export type MuseDeviceControllerConstructor = new (variant: MuseVariant, ble: BleController, recorder?: XdfRecorder) => DeviceControllerBle; export interface MuseControllerOptions extends DeviceControllerBleOptions { txtRecordPath?: string; enableLogs?: boolean; disableEeg?: boolean; disablePpg?: boolean; disableGyro?: boolean; disableAccel?: boolean; }