UNPKG

ive-connect

Version:

A universal haptic device control library for interactive experiences

64 lines (63 loc) 1.37 kB
/** * Buttplug-specific types */ import { DeviceSettings } from "../../core/device-interface"; /** * Buttplug connection types */ export declare enum ButtplugConnectionType { WEBSOCKET = "websocket", LOCAL = "local" } /** * Enum to represent current connection state */ export declare enum ButtplugConnectionState { DISCONNECTED = "DISCONNECTED", CONNECTING = "CONNECTING", CONNECTED = "CONNECTED" } /** * Buttplug device settings */ export interface ButtplugSettings extends DeviceSettings { connectionType: ButtplugConnectionType; serverUrl?: string; clientName: string; strokeRange?: { min: number; max: number; }; allowedFeatures: { vibrate: boolean; rotate: boolean; linear: boolean; }; devicePreferences: Record<number, { enabled: boolean; useVibrate: boolean; useRotate: boolean; useLinear: boolean; intensity?: number; }>; } /** * Buttplug device info */ export interface ButtplugDeviceInfo { index: number; name: string; canVibrate: boolean; canRotate: boolean; canLinear: boolean; } /** * Device preference for storing configuration */ export interface DevicePreference { enabled: boolean; useVibrate: boolean; useRotate: boolean; useLinear: boolean; intensity?: number; }