Object with fields from the endpoint descriptor -- see libusb documentation or USB spec.
ProtecteddeviceEndpoint direction.
Sets the timeout in milliseconds for transfers on this endpoint. The default, 0, is infinite timeout.
Endpoint type: usb.LIBUSB_TRANSFER_TYPE_BULK, usb.LIBUSB_TRANSFER_TYPE_INTERRUPT, or usb.LIBUSB_TRANSFER_TYPE_ISOCHRONOUS.
Clear the halt/stall condition for this endpoint.
Create a new Transfer object for this endpoint.
The passed callback will be called when the transfer is submitted and finishes. Its arguments are the error (if any), the submitted buffer, and the amount of data actually written (for OUT transfers) or read (for IN transfers).
Timeout for the transfer (0 means unlimited).
Transfer completion callback.
Perform a transfer to write data to the endpoint.
If length is greater than maxPacketSize, libusb will automatically split the transfer in multiple packets, and you will receive one callback once all packets are complete.
this in the callback is the OutEndpoint object.
The device must be open to use this method.
Optionalcallback: (error: LibUSBException | undefined, actual: number) => void
Endpoints in the OUT direction (PC->device) have this type.