UNPKG

@huddly/device-api-usb

Version:

Huddly SDK device api which uses node-usb wrapper responsible for handling the transport layer of the communication and discovering the physical device/camera

30 lines (29 loc) 1.54 kB
/// <reference types="node" /> import IHuddlyDeviceAPI from '@huddly/sdk-interfaces/lib/interfaces/IHuddlyDeviceAPI'; import IUVCControlAPI from '@huddly/sdk-interfaces/lib/interfaces/IUVCControlApi'; import ITransport from '@huddly/sdk-interfaces/lib/interfaces/ITransport'; import IDeviceDiscovery from '@huddly/sdk-interfaces/lib/interfaces/IDeviceDiscovery'; import DeviceApiOpts from '@huddly/sdk-interfaces/lib/interfaces/IDeviceApiOpts'; import HuddlyHEX from '@huddly/sdk-interfaces/lib/enums/HuddlyHex'; import NodeUsbTransport from './transport'; import { EventEmitter } from 'events'; import DeviceDiscoveryManager from './manager'; import { usb } from 'usb'; export declare const defaultPidsToIgnore: HuddlyHEX[]; export default class HuddlyDeviceAPIUSB implements IHuddlyDeviceAPI { private readonly className; eventEmitter: EventEmitter; deviceDiscoveryManager: DeviceDiscoveryManager; maxSearchRetries: Number; alwaysRetry: boolean; constructor(opts?: DeviceApiOpts); initialize(): void; registerForHotplugEvents(eventEmitter: EventEmitter): void; getDeviceDiscoveryAPI(): Promise<IDeviceDiscovery>; getValidatedTransport(device: usb.Device): Promise<ITransport>; getTransport(device: usb.Device): Promise<NodeUsbTransport>; isUVCControlsSupported(device: usb.Device): Promise<boolean>; getUVCControlAPIForDevice(device: usb.Device): Promise<IUVCControlAPI>; isHIDSupported(device: usb.Device): Promise<boolean>; getHIDAPIForDevice(device: usb.Device): Promise<any>; }