# Stubs for usb.backend.libusb0 (Python 3)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.
from ctypes import *
import usb.libloader
from typing import Any, Optional
class _PackPolicy: ...
class _usb_descriptor_header(Structure): ...
class _usb_string_descriptor(Structure): ...
class _usb_endpoint_descriptor(Structure, _PackPolicy): ...
class _usb_interface_descriptor(Structure, _PackPolicy): ...
class _usb_interface(Structure, _PackPolicy): ...
class _usb_config_descriptor(Structure, _PackPolicy): ...
class _usb_device_descriptor(Structure, _PackPolicy): ...
class _usb_device(Structure, _PackPolicy): ...
class _usb_bus(Structure, _PackPolicy): ...
class _DeviceDescriptor:
bLength: Any = ...
bDescriptorType: Any = ...
bcdUSB: Any = ...
bDeviceClass: Any = ...
bDeviceSubClass: Any = ...
bDeviceProtocol: Any = ...
bMaxPacketSize0: Any = ...
idVendor: Any = ...
idProduct: Any = ...
bcdDevice: Any = ...
iManufacturer: Any = ...
iProduct: Any = ...
iSerialNumber: Any = ...
bNumConfigurations: Any = ...
address: Any = ...
bus: Any = ...
port_number: Any = ...
port_numbers: Any = ...
speed: Any = ...
def __init__(self, dev: Any) -> None: ...
class _LibUSB(usb.backend.IBackend):
def enumerate_devices(self) -> None: ...
def get_device_descriptor(self, dev: Any): ...
def get_configuration_descriptor(self, dev: Any, config: Any): ...
def get_interface_descriptor(self, dev: Any, intf: Any, alt: Any, config: Any): ...
def get_endpoint_descriptor(self, dev: Any, ep: Any, intf: Any, alt: Any, config: Any): ...
def open_device(self, dev: Any): ...
def close_device(self, dev_handle: Any) -> None: ...
def set_configuration(self, dev_handle: Any, config_value: Any) -> None: ...
def get_configuration(self, dev_handle: Any): ...
def set_interface_altsetting(self, dev_handle: Any, intf: Any, altsetting: Any) -> None: ...
def claim_interface(self, dev_handle: Any, intf: Any) -> None: ...
def release_interface(self, dev_handle: Any, intf: Any) -> None: ...
def bulk_write(self, dev_handle: Any, ep: Any, intf: Any, data: Any, timeout: Any): ...
def bulk_read(self, dev_handle: Any, ep: Any, intf: Any, buff: Any, timeout: Any): ...
def intr_write(self, dev_handle: Any, ep: Any, intf: Any, data: Any, timeout: Any): ...
def intr_read(self, dev_handle: Any, ep: Any, intf: Any, buff: Any, timeout: Any): ...
def iso_write(self, dev_handle: Any, ep: Any, intf: Any, data: Any, timeout: Any): ...
def iso_read(self, dev_handle: Any, ep: Any, intf: Any, buff: Any, timeout: Any): ...
def ctrl_transfer(self, dev_handle: Any, bmRequestType: Any, bRequest: Any, wValue: Any, wIndex: Any, data: Any, timeout: Any): ...
def clear_halt(self, dev_handle: Any, ep: Any) -> None: ...
def reset_device(self, dev_handle: Any) -> None: ...
def detach_kernel_driver(self, dev_handle: Any, intf: Any) -> None: ...
def get_backend(find_library: Optional[Any] = ...): ...