ive-connect
Version:
A universal haptic device control library for interactive experiences
30 lines (29 loc) • 1.23 kB
TypeScript
/**
* Command Helpers for Buttplug Devices
*
* Utility functions for converting script commands to Buttplug device commands
*/
import { ButtplugApi } from "./buttplug-api";
import { ButtplugDeviceInfo, DevicePreference } from "./types";
/**
* Convert script position (0-100) to device position (0.0-1.0)
*/
export declare function convertScriptPositionToDevicePosition(scriptPos: number, strokeMin?: number, strokeMax?: number, invert?: boolean): number;
/**
* Create a command executor for a specific device
*/
export declare function createDeviceCommandExecutor(api: ButtplugApi, deviceInfo: ButtplugDeviceInfo, preferences: DevicePreference, invertScript?: boolean): {
executeAction: (pos: number, prevPos: number, durationMs: number, strokeRange?: {
min: number;
max: number;
}) => Promise<void>;
};
/**
* Create a command executor for multiple devices
*/
export declare function createMultiDeviceCommandExecutor(api: ButtplugApi, devices: ButtplugDeviceInfo[], preferences: Map<number, DevicePreference>, invertScript?: boolean): {
executeAction: (pos: number, prevPos: number, durationMs: number, strokeRange?: {
min: number;
max: number;
}) => Promise<void>;
};